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 received by the host agent are correlated with the process sending them, provided that:

  1. the host agent is running on a Linux system with the following commands available: lsns, nsenter and ss;
  2. the process sending the tracing data is running on the same host as the host agent;
  3. the process sending the tracing data is not ignored 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 go over a proxy, the proxy will be associated with the traces instead.

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

If any of the preconditions above is not fulfilled, the tracing data will be corrwelated 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, where directly interacting with one another.
  • Since the Jaeger tracing data do not convey a notion of which process is sending them to the host agent, Instana will correlate those traces to the host underpinning the host agent. This prevents the association with the process, and therefore also container and platform hierarchy (e.g., Kubernetes pod, namespace and cluster).
  • Jaeger has no notion of end-user monitoring (although this may eventually change with the adoption of W3C TraceContext); 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.