AI engineering · 20 of 42

Distributed Tracing

See the full request path

Scroll

See the full request path

An LLM request touches many services: an API layer, a rewrite, retrieval, the model itself, a tool call, a response. Each writes its own logs, and none of them can see the whole journey.

Distributed tracing gives the request one identifier that every hop records against, along with its own timing and its parent. Six disconnected log files become one timeline.

The value shows up the first time something is slow. Every service reports itself healthy, every dashboard is green, and only the end-to-end view shows which span actually owns the delay. Without it, that investigation is guesswork across six teams.

Observability
SIX HEALTHY SERVICES, ONE SLOW REQUEST api 90ms rewrite 90ms retrieval 220ms the model 2.1s tool call 180ms response 120ms one trace id, end to end Each hop records a span with its own timing and its parent, so six separate log files become one connected timeline. Here the whole request takes about 2.8 seconds and the model span owns almost all of it — which no single service's dashboard would have shown you.
One request as six timed spans on a shared trace, with the model span dominating the total.