1. 课程导论:为什么需要将 Jaeger 链路数据与 SLO 台账关联?课程目标与学习路径概览
1.1 传统故障排查的“信息孤岛”困境
在微服务架构中,分布式追踪(Jaeger)与服务等级目标(SLO)台账通常是两套独立系统。当线上出现故障时,SRE 团队往往面临以下痛点:
- 指标告警触发:Prometheus 告警显示 SLO 燃烧率超标,但无法直接定位是哪个服务、哪类请求导致。
- 链路数据孤立:Jaeger 展示单次请求的完整调用链,但缺乏业务视角的“正常/异常”判定标准。
- 排查路径断裂:从 SLO 燃烧到根因链路,需要手动切换多个控制台,耗时且易遗漏关键证据。
核心矛盾:SLO 台账定义了“用户可接受的服务质量边界”,而 Jaeger 链路数据记录了“每一次请求的真实行为”。两者割裂,导致故障响应从“分钟级”退化为“小时级”。
1.2 关联的价值:从“指标异常”到“链路根因”的直通车
将 Jaeger 链路数据与 SLO 台账关联,本质上是建立从宏观指标到微观请求的映射关系。其核心价值体现在三个层面:
| 层面 | 传统模式 | 关联后模式 |
|---|---|---|
| 故障发现 | SLO 燃烧率告警 → 人工猜测受影响服务 | SLO 燃烧率告警 → 自动关联异常链路采样 |
| 根因定位 | 逐服务查看日志,依赖经验判断 | 基于 SLO 标签筛选出“坏请求”链路,直接定位错误节点 |
| 恢复验证 | 手动回放测试,等待下一轮告警 | 实时观察 SLO 燃烧率曲线与链路错误率同步下降 |
实战收益:某电商团队在双十一大促中,通过关联 Jaeger 链路与 SLO 台账,将“下单接口超时”的根因定位时间从 25 分钟缩短至 3 分钟,MTTR 降低 88%。
1.3 关联的技术实现逻辑
关联的核心在于为 Jaeger Span 打上 SLO 标签,并在 SLO 台账中嵌入链路上下文。下图展示了数据流的闭环:
1.4 课程目标
通过本课程,你将掌握以下核心能力:
- 理解关联模型:掌握 SLO 台账的数据结构(燃烧率、错误预算、窗口期)与 Jaeger Span 标签体系(service、operation、error=true/false)的映射关系。
- 实战配置能力:学会在 Jaeger 采集端注入 SLO 标签,并在 SLO 台账中嵌入 Trace ID 上下文。
- 故障排查方法论:基于关联数据,建立“SLO 燃烧 → 异常 Trace 筛选 → 根因 Span 定位 → 恢复验证”的标准化排查流程。
- 工具链集成:使用 Jaeger Query API、Prometheus、Grafana 构建关联看板,实现可视化排查。
1.5 学习路径概览
课程共 30 章,分为四个阶段,建议按顺序学习:
| 阶段 | 章节范围 | 核心内容 | 实战产出 |
|---|---|---|---|
| 基础篇 | 第 1-8 章 | Jaeger 核心概念、SLO 台账设计、关联模型原理 | 关联架构图、标签映射表 |
| 配置篇 | 第 9-16 章 | Jaeger 标签注入、SLO 台账 API 集成、数据管道搭建 | 可运行的关联采集管道 |
| 排查篇 | 第 17-24 章 | 故障场景模拟、根因定位技巧、燃烧率与链路联动分析 | 故障排查 SOP 文档 |
| 进阶篇 | 第 25-30 章 | 大规模优化、多集群关联、AI 辅助根因分析 | 生产级关联平台方案 |
前置要求:建议学员具备基础的分布式追踪概念(Trace/Span)、Prometheus 指标查询语法,以及至少一种编程语言(Go/Python/Java)的微服务开发经验。课程中的代码示例以 Go 和 Python 为主。