Application Instrumentation Overview
Last updated on 09 September, 2024Instrumenting an application enables LogicMonitor to monitor the application’s trace data, allowing you to view how the application is performing in your infrastructure. Instrumenting an application involves injecting code into the application that enables it to emit trace data back to LogicMonitor.
You can use the OpenTelemetry API and SDK to import the trace data into your LogicMonitor portal for observability. For more information about instrumenting applications using OpenTelemetry, see OpenTelemetry’s Instrumenting documentation.
There are two methods you can use to instrument your application outside of your LogicMonitor portal. After instrumenting an application, you must enable the application to emit trace data and forward the data to LogicMonitor. You can use the following methods to instrument your application:
- Automatic Instrumentation—You can use OpenTelemetry client libraries to automatically instrument your application if there are libraries available to do so. LogicMonitor provides a wizard directly in your portal. The wizard provides client libraries that enable you to automatically instrument some applications.
- Manual Instrumentation—You can write code in your application using the OpenTelemetry API and SDK to capture and emit the trace data. You can use this method of instrumentation for any application that LogicMonitor supports the trace data for. This method requires you to forward your trace data to LogicMonitor.
Some applications require you to use both methods of instrumentation.
LogicMonitor supports instrumentation for the following languages:
Language | Minimum Supported Version | Automatically Instrument | Automatically Instrument Using Wizard in LogicMonitor | Manually Instrument |
.NET | .NET Framework 4.6.2 or later .NET Core 3.1 or later | ✓ | ✓ | ✓ |
Go | Go 1.16 or later | ✓ | ||
Java | Java 8 or later | ✓ | ✓ | ✓ |
Javascript | Support for all versions | ✓ | ||
Node.js | Node.js 8.12.0 or later | ✓ | ||
Python | Python 3.6 or later | ✓ | ✓ | ✓ |
Ruby | Ruby 2.5 or later | ✓ |
Note: You can forward the trace data to LogicMonitor from the languages that OpenTelemetry code instrumentation supports that are not listed in this table.
For more information about forwarding trace data, see Forwarding Traces from Instrumented Applications.
For more information about the languages that OpenTelemetry supports for instrumentation, see OpenTelemetry’s Instrumentation documentation.
In addition to the languages listed, you can instrument applications running on Microsoft Azure App Services. For more information, see Automatic Instrumentation of Applications in Microsoft Azure App Service for LogicMonitor.