Trace Data Forwarding without an OpenTelemetry Collector

Last updated on 21 July, 2022

You can forward trace data from your applications directly to LogicMonitor without using an OpenTelemetry Collector. This allows you to quickly ingest traces from your applications without needing to install and manage a Collector. For example, if you want to gather trace data for Lambda functions in your environment, you can modify the variables during instrumentation that allows the function to emit trace data directly to your LogicMonitor portal.

Note: Using this method does not allow you to leverage the OpenTelemetry Collector’s Processors to modify and enhance data that is sent to the Collector. For more information, see Configurations for OpenTelemetry Collector Processors.

Requirements to Forward Trace Data without an OpenTelemetry Collector

To forward trace data without an OpenTelemetry Collector, you need the following:

  • The endpoint of your LogicMonitor portal, similar to the following:
    https://<PORTALNAME>.logicmonitor.com/rest/api/v1/traces
  • Valid API token
    For more information, see API Tokens.

Forwarding Trace Data without an OpenTelemetry Collector

Note: The following uses Java. For more information and examples of other languages, see LogicMonitor’s hosted demo application, HipsterShop.

During instrumentation, modify the variables in the application’s configuration file to include the endpoint of your LogicMonitor portal, similar to the following:

java -javaagent:../opentelemetry-javaagent-all-1.9.0.jar \
-Dotel.exporter=otlp \
-Dotel.resource.attributes=service.name=pet-clinic \
-Dotel.exporter.otlp.endpoint=https://<portalname>.logicmonitor.com/rest/api \
-Dotel.exporter.otlp.protocol=http/protobuf \
-Dotel.exporter.otlp.headers=Authorization="Bearer <token>" \
-jar spring-petclinic-2.5.0-SNAPSHOT.jar

Recommendation: Use “OTLP” or “HTTP” as the protocol to send data directly to your LogicMonitor portal. These protocols use Protobuf payloads encoded either in binary format or in JSON format and use HTTP Post requests to send telemetry data from clients to servers.

In This Article