intermediate

Trace ID

Прокидывайте trace identity через логи, exemplars метрик, HTTP headers, очереди и async-работу.

Trace ID идентифицирует всю распределённую операцию; span ID — отдельные шаги. W3C Trace Context (`traceparent`, `tracestate`) стандартизирует propagation через HTTP и многие messaging-системы.

					traceparent: 00-4bf92f3577b34da6a3ce929d0e0e4736-00f067aa0ba902b7-01
             │  └─ trace-id ────────────────┘ └─ parent span ─┘
             └─ version
				

Логируйте trace ID в каждой structured строке на пути запроса. Метрики могут использовать exemplars на медленные buckets гистограмм.

На интервью: trace ID vs request ID, baggage для бизнес-контекста и propagation при cold start serverless.

Типовые ошибки: новый trace на каждом internal hop; ID не уходят в background jobs; клиент не шлёт traceparent в BFF.

Компромисс — универсальная корреляция против legacy vendor headers.

Чеклист:

  • W3C headers где возможно.
  • trace ID в контексте logger.
  • Продолжение trace через async.
  • Контракт headers между командами.