# 故障复盘模板（Postmortem）

> 原则：复盘不追责、不甩锅，目标是「让同类故障不再发生」。先写事实，再写改进，别在故障中还热的时候就开复盘会。

## 0. 基本信息

- 故障编号 / 标题：
- 时间：开始 ______ 恢复 ______ 持续 ______
- 影响范围 / 影响用户量：
- 严重级别（P0/P1/P2）：
- 值班人 / 参与人：

## 1. 现象（用户视角）

- 用户看到了什么？（报错、超时、数据异常、页面不可用）

## 2. 时间线（只写事实）

| 时间 | 事件 |
|------|------|
|      |      |
|      |      |

> 从最早的可疑信号写起，包括告警、用户反馈、自查发现。

## 3. 根因分析

- **直接原因**：触发故障的那一个改动 / 事件是什么？
- **根本原因**：用 5-Why 往下挖——
  1. 为什么 A？→
  2. 为什么 B？→
  3. 为什么 C？→
  4. 为什么 D？→
  5. 为什么 E？→
- **放大因素**：为什么小问题变成了大故障？（无降级、无告警、值班没人……）

## 4. 排查过程

- 先怀疑了什么？为什么？
- 用什么手段定位的（日志 / trace / 指标 / 压测复现）？
- 哪些排查是绕了弯路的？（下次可以省掉的）

## 5. 止血与恢复

- 做了什么让系统先恢复？（回滚 / 扩容 / 降级 / 重启）
- 止血动作本身有无副作用？

## 6. 修复方案（长期）

| 类别 | 改进项 | 负责人 | 截止日期 |
|------|--------|--------|----------|
| 代码 / 配置 |        |        |          |
| 监控告警 |        |        |          |
| 流程 |        |        |          |
| 文档 |        |        |          |

## 7. 待验证项

- [ ] 修复后压测 / 演练验证过
- [ ] 告警能提前 10 分钟发现同类问题
- [ ] 新同学照着文档能完成一次演练

## 8. 一句话教训

> 用一句话总结，能让所有人记住的版本。
