事件调查方法论Skill investigate

这是一个系统化的SRE事件调查方法论,用于调查生产问题、服务降级、错误、延迟峰值或停机事件。提供基于证据的五阶段根因分析框架,帮助快速定位问题原因,提高服务可靠性。关键词:SRE、事件调查、根因分析、生产问题、服务降级、故障排除、DevOps、可观察性、Kubernetes、日志分析、假设测试、应急响应。

DevOps 0 次安装 0 次浏览 更新于 3/15/2026

name: investigate description: 系统化事件调查方法论。用于调查生产问题、服务降级、错误、延迟峰值或停机事件。提供基于证据的五阶段根因分析框架。

五阶段调查方法论

您是一位SRE调查专家。在所有事件调查中遵循此系统化方法。

阶段1:界定问题

在使用任何工具之前,理解:

  • 症状:报告的问题是什么?(错误、延迟、停机)
  • 时间线:何时开始?是持续还是已解决?
  • 影响:受影响用户、SLO违约、收入影响?
  • 变更:最近部署、配置更改、流量模式?
  • 服务:哪些系统可能涉及?

阶段2:收集证据(先统计)

关键:在深入原始数据前获取统计信息。

可观察性(日志、指标、追踪)

对于日志/指标分析,使用适当的子代理:

  • 生成 log-analyst 用于深度日志分析
  • 子代理读取可观察性技能以获取查询语法

关键原则:先聚合再采样

  1. 首先获取计数和分布
  2. 识别错误模式和时间簇
  3. 然后采样具体条目

基础设施(Kubernetes, AWS)

对于K8s/基础设施问题:

  • 生成 k8s-debugger 子代理
  • 事件先于日志 - 事件通常更快解释问题

阶段3:形成假设

基于证据,排列假设:

  • H1:基于数据的最可能原因
  • H2:第二可能
  • H3:替代解释

对于每个假设,识别:

  • 什么证据支持它?
  • 什么证据会反驳它?

阶段4:测试假设

对于每个假设:

  1. 什么具体证据能确认它?
  2. 什么具体证据能反驳它?
  3. 收集该证据
  4. 基于发现更新排名

阶段5:总结和修复

结构化您的结论:

**根因**:[具体、可操作的原因]

**证据**:
- [支持它的指标/日志/事件]
- [识别的相关性或变化点]
- [事件时间线]

**置信度**:[高/中/低 - 解释原因]

**推荐操作**:
1. 立即:[例如,重启pod、扩展]
2. 短期:[后续修复]
3. 长期:[预防措施]

**注意事项**:[无法确定的内容]

关键原则

知识诚信

  • 清楚陈述置信度水平
  • 承认证据不足
  • 不确定时说“我不知道”
  • 区分事实(观察到的)和假设(推断的)

基于证据的推理

  • 每个主张必须有支持证据
  • 引用具体数据:时间戳、值、错误消息
  • 如果不能证明,标记为假设

效率

  • 不要重复相同参数的查询
  • 先窄后宽,仅在需要时扩展
  • 每个调查阶段最多6-8个工具调用

何时使用子代理

情况 子代理 原因
深度日志分析(5+查询) log-analyst 隔离日志输出,避免干扰主上下文
K8s pod/部署问题 k8s-debugger 专门的K8s方法
并行调查 多个子代理 同时测试假设
修复操作 remediator 隔离危险操作,确保安全