用途:在分布式系统中追踪请求全链路,理解延迟、服务依赖与故障点,用于排查延迟问题、分析请求路径、定位瓶颈与错误传播。
主要能力:介绍 Trace、Span、Context、Tags、Logs 等核心概念;提供 Jaeger 的 Kubernetes 与 Docker Compose 部署方式,以及 Tempo(Grafana)的 Kubernetes 部署配置;给出基于 OpenTelemetry 的 Python(Flask)、Node.js(Express)、Go 埋点示例;说明通过 traceparent、tracestate 头进行上下文传播;提供概率、限流、自适应采样策略;并给出 Jaeger 查询慢请求、错误与自动服务依赖图的方法。
使用方式:部署 Jaeger 或 Tempo 后,在应用中初始化 TracerProvider 并注册导出器与自动埋点,跨服务调用时注入传播头,最后在 Jaeger UI 按 service、duration、error、tags 等条件查询分析。
适用场景:微服务架构下的延迟排查、依赖梳理、错误传播追踪与请求路径分析。
限制:资料未提供具体性能数据、收费信息与平台兼容性细节;采样率、标签命名等需结合实际环境调整。