OpenTelemetry

Note: The OpenTelemetry support in Instana is in technology preview, which is aligning with the overall specification state in the OpenTelemetry project. We are hard at work to make OpenTelemetry a first-class citizen as soon as the specifications become stable.

Using our host agent processes as proxy, OpenTelemetry implementations can send tracing and metric data to the Instana agent. The data is then sent to the Instana backend for processing.

OpenTelemetry is still under development. For this reason, parts are not yet specified and therefore not finally released. The current project status of OpenTelemetry can be found on the status page of OpenTelemetry.

Activating OpenTelemetry support

The OpenTelemetry ingestion in the host agent is deactivated by default to not interfere with other collectors on the host. To enable the reception of OpenTelemetry data in the host agent, add the following snippet to your host agent's configuration.yaml:

com.instana.plugin.opentelemetry:
  enabled: true

After activating the configuration above, the host agent will activate on port 4317 (the default gRPC port) an ingestor for OpenTelemetry's default otlp exporter.

OpenTelemetry Exporters

Customers running applications in serverless environments such as AWS Lambda can benefit from Instana Exporters.

Currently, Instana OpenTelemetry exporters are available only for Node.js applications.

TLS encryption for OpenTelemetry ingestion

TLS encryption can be enabled on the Agent, so that all data send to the OpenTelemetry ingestion endpoint is TLS encrypted as well. See Enabling TLS Encryption for more information on how to set this up.

OpenTelemetry logs

Collection of OpenTelemetry logs is not supported. The host agent will show some benign exceptions if it receives OpenTelemetry logs data.

OpenTelemetry metrics

OpenTelemetry metrics appear as "OpenTelemetry Custom Metrics" associated with the host or with the process from where they are collected. You can query OpenTelemetry custom metrics using the "Dynamic Focus" and "Event & Alerts" with entity.type:opentelemetry or entity.type:otel.

The sensor collects the below core metrics:

OpenTelemetry tracing

Note: We are hard at work to make OpenTelemetry a first-class citizen with full interoperability with Instana's own AutoTrace technology!

Current scope

Using OpenTelemetry with other trace protocols

OpenTelemetry supports exporters others than its native otlp, like Zipkin and Jaeger, as well as matching context-propagators. When using Jaeger or Zipkin exporters, the host agent will be able to ingest the data and process them the same as with other Zipkin and Jaeger implementations; refer to the Zipkin documentation and Jaeger documentation, respectively.

Known limitations

Infrastructure correlation

For detailed information on infrastructure correlation on Linux hosts, see the documentation on the agent's HTTP API endpoint.

Note: The optional Instana Agent Service provided on Kubernetes via the Instana Agent Helm Chart is very useful in combination with the OpenTelemetry support. It ensures that the data is forwarded to the Instana Agent which runs on the same Kubernetes node. This allows the Instana Agent to populate the infrastructure correlation data correctly.