分布式追踪和服务网格
构建支持 trace 上下文传播的应用程序
尽管 Istio 代理可以自动发送 span,但要将这些 span 组合成单个 trace,还需要额外的信息。应用程序必须在 HTTP header 中传播这些信息,这样当代理发送 span 时,后端就可以将它们组合成单个 trace。
为此,每个应用程序必须从每个传入请求中收集 header,并将这些 header 转发到由该传入请求触发的所有传出请求。要转发哪些 header 取决于所配置的 trace 后端。以下为概要:
所有应用程序都应转发以下 header:
x-request-id:Envoy 特有的 header,用于一致地对日志和 trace 进行采样。traceparent和tracestate:W3C 标准 header
有关其他可观测性工具,请参阅其文档。