← Back to microservices patterns map
🔎
Microservices Pattern

Distributed Tracing

Follow one request across services using trace IDs and spans.

observe

Detailed Description

Tracing is the best way to understand latency in distributed request paths.

Each service adds spans so teams can see where time and failures occur.

Visual Diagram

Trace: traceId = abc-123
  [Gateway]     span 1:  0ms  → 120ms
    [UserSvc]   span 2: 10ms  →  40ms
    [OrderSvc]  span 3: 45ms  → 110ms
      [DB call] span 4: 50ms  → 105ms  ← slow!
    [EmailSvc]  span 5:115ms  → 118ms

  Identify bottleneck: DB call at span 4

Tradeoffs

Pros

Pinpoints bottlenecks across services

Cons

Instrumentation overhead and storage cost

Examples: OpenTelemetry, Jaeger, Zipkin, AWS X-Ray