Простыми словами
Например, frontend API передаёт traceparent в сервис каталога, а тот — в базу, поэтому задержка видна одной цепочкой. Поэтому заранее определяют границы ожидания и поведение при отказе - иначе один медленный компонент начинает удерживать ресурсы и распространять проблему дальше.
Пример при разработке
Frontend API передаёт traceparent в сервис каталога, а тот — в базу, поэтому задержка видна одной цепочкой.
Это редакционный пример применения, а не часть определения или доказательство концепции.Формальное определение
Trace Context стандартизирует заголовки traceparent и tracestate для передачи идентичности трассы между сервисами.
Механизм действия
Отправитель inject-ит trace id, parent id и flags, получатель валидирует их и создаёт дочерний span.
Пример в работе
Внедрить «Стандарт передачи контекста трассировки» как формальную настройку, не проверив сценарий отказа и ограничение: Заголовки нельзя слепо доверять; sampling и приватность требуют политики на границах.
Применять «Стандарт передачи контекста трассировки» только для заявленной цели, проверять поведение на реальном контуре и сохранять наблюдаемый критерий результата.
Ограничения
Заголовки нельзя слепо доверять; sampling и приватность требуют политики на границах.
Источник
W3C Distributed Tracing Working Group, “Trace Context”, 2021.