Skip to content

Jaeger

Jaeger is a distributed tracing system for following a request as it moves through a set of services.

What Tracing Shows

  • Request latency across service boundaries.
  • Where time is spent in a distributed call chain.
  • Which downstream dependency is slowing the system down.
  • How a single request behaved end to end.

Core Concepts

  • A trace is the full request path.
  • A span is one timed operation inside the trace.
  • Context propagation carries trace information between services.
  • Sampling controls how many traces are collected.

Typical Architecture

  • Instrumented services create spans.
  • A collector or agent receives trace data.
  • Storage keeps traces for search and analysis.
  • The Jaeger UI is used to inspect traces and dependencies.

When to Use It

  • Debugging latency in microservices.
  • Understanding request fan-out and dependency chains.
  • Correlating errors with specific service interactions.

Practical Notes

  • Trace IDs need to flow across every hop.
  • Do not sample so aggressively that important failures disappear.
  • Add useful tags such as service name, route, tenant, and status code.