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 台账中嵌入链路上下文。下图展示了数据流的闭环:

Jaeger 链路数据与 SLO 台账关联架构 SLO 台账 燃烧率 / 错误预算 关联引擎 标签注入 / 上下文映射 Jaeger 链路 Span / Trace / 标签 SLO 标签 链路上下文 故障排查流程:SLO 燃烧告警 → 关联引擎筛选异常 Trace → Jaeger 展示根因 Span ① SLO 燃烧告警 ② 筛选异常 Trace ③ 定位根因 Span ④ 恢复与验证 关键:SLO 台账中的“错误预算消耗”与 Jaeger 链路中的“错误 Span 比例”必须保持数学一致性 例如:SLO 定义 99.9% 可用性 → 0.1% 的 Trace 应被标记为“坏请求”并关联燃烧事件

1.4 课程目标

通过本课程,你将掌握以下核心能力:

  1. 理解关联模型:掌握 SLO 台账的数据结构(燃烧率、错误预算、窗口期)与 Jaeger Span 标签体系(service、operation、error=true/false)的映射关系。
  2. 实战配置能力:学会在 Jaeger 采集端注入 SLO 标签,并在 SLO 台账中嵌入 Trace ID 上下文。
  3. 故障排查方法论:基于关联数据,建立“SLO 燃烧 → 异常 Trace 筛选 → 根因 Span 定位 → 恢复验证”的标准化排查流程。
  4. 工具链集成:使用 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 为主。

1.6 本章小结