Jaeger

The Instana Host Agent is capable of ingesting Jaeger tracing data.

Setup

  1. Install an Instana host agent on the same host as the processes emitting Jaeger traces.
  2. Set the JAEGER_ENDPOINT environment variable to http://localhost:42699/com.instana.plugin.jaeger.trace, assuming that the Jaeger-traced process can connect to the host agent on that IP address and port; this is not a given in some containerized environments, in which case the network setup and the value of the JAEGER_ENDPOINT environment variable must be adjusted accordingly.

Infrastructure correlation

Starting with host agent version 1.1.582, Jaeger tracing data that is received by the host agent is correlated with the process that sends them, provided that:

  1. The host agent is running on a Linux system where the following commands are available: lsns, nsenter and ss.
  2. The process that sends the tracing data is running on the same host as the host agent.
  3. The process that sends the tracing data is not ignored by using the Ignore Processes capability.
  4. Report traces directly to the host agent, rather than running over a proxy like the OpenTelemetry Collector. If the tracing data goes over a proxy, the proxy is associated with the traces instead.

The Application Perspective Service dashboard will correctly reference any process from which related traces were ingested, including, for example, infrastructure changes that took place for this service.

If any of these described preconditions is not fulfilled, the tracing data is correlated with the host on which the host agent is running.

Known limitations

  • The tracing data collected from Jaeger will not be correlated with the tracing data collected via AutoTrace, resulting in separate traces even if the systems traced by Jaeger and Instana AutoTrace, respectively, were directly interacting with one another.

  • Since the Jaeger tracing data does not convey a notion of which process is sending them to the host agent, Instana correlates those traces to the host underpinning the host agent. This prevents the association with the process, and therefore also container and platform hierarchy (for example, Kubernetes pod, namespace, and cluster).

  • Jaeger has no notion of user monitoring (although this may eventually change with the adoption of W3C TraceContext.md); as such, beacons collected with Instana Website Monitoring will not be correlated with backend traces collected from Jaeger.

  • The host agent supports the collection of Jaeger traces only over HTTP. UDP, which is the protocol used if you configure the JAEGER_AGENT_HOST and JAEGER_AGENT_PORT environment variables, is not supported.