首页/系统与基础设施/自动化运维速查/自动化事故的复盘方法
排障与安全50 条

自动化事故的复盘方法

自动化事故复盘的价值在于区分直接原因与促成条件,并用检测延迟、响应延迟等量化数字驱动改进;改进项必须有负责人、期限与验证方式,结论还要沉淀为可检索的知识与检查清单。

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌​​‌​‌‌‌‌​‌‌​​​​‌​‌‌‌​‌​‌​‌‌‌​‌​​​‌‌​‌‌‌‌​‌‌​‌‌​‌​‌‌​​​​‌​‌‌‌​‌​​​‌‌​‌​​‌​‌‌​‌‌‌‌​‌‌​‌‌‌​​​‌​‌‌‌‌​‌‌​​​​‌​‌‌‌​‌​‌​‌‌‌​‌​​​‌‌​‌‌‌‌​‌‌​‌‌​‌​‌‌​​​​‌​‌‌‌​‌​​​‌‌​‌​​‌​‌‌​‌‌‌‌​‌‌​‌‌‌​​​‌​‌‌​‌​‌‌​‌​​‌​‌‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌​​‌​‌‌​​‌​​​‌‌​​‌​‌​‌‌​‌‌‌​​‌‌‌​‌​​​​‌​‌‌​‌​‌‌‌​​​​​‌‌​‌‌‌‌​‌‌‌​​‌‌​‌‌‌​‌​​​‌‌​‌‌​‌​‌‌​‌‌‌‌​‌‌‌​​‌​​‌‌‌​‌​​​‌‌​​‌​‌​‌‌​‌‌​‌​​‌​‌‌​‌​‌‌​‌‌​‌​‌‌​​‌​‌​‌‌‌​‌​​​‌‌​‌​​​​‌‌​‌‌‌‌​‌‌​​‌​​​​‌​‌‌‌​​‌‌​‌​​​​‌‌‌​‌​​​‌‌​‌‌​‌​‌‌​‌‌​​

复盘的目标是改进而不是定责

自动化事故的复盘之所以容易流于形式,多是因为焦点放错了地方:把讨论集中在「谁改的」,而不是「为什么这个改动能一路通过到生产」。有效的复盘围绕三件事展开——把时间线还原清楚、把影响面量化、把促成条件的链条找出来。结论必须落到可验证的改进项上,否则下一次事故的经过会和这次高度雷同,只是换了一个触发点。

基本信息

适用对象批量执行、发布与配置变更引发的事故
产出物时间线、影响面、根因与促成条件、改进项清单
时间口径检测时间、响应开始时间、恢复时间、完全恢复时间
改进项要求有负责人、有期限、可验证
纪律要求无责讨论,聚焦机制而非个人

复盘要覆盖的四部分

  • 时间线:从变更发起到完全恢复的关键节点,包含检测与响应延迟
  • 影响面:受影响主机与业务数量、持续时间、是否有数据损失
  • 原因链:直接触发的技术原因与让它得以发生的流程原因分列
  • 改进项:按优先级排序,每项写明负责人、期限与验证方式
  • 预案修正:本次用到或缺失的预案是否需要补充与演练
  • 知识沉淀:把结论写成可检索的条目,纳入下次变更的检查清单

取证与时间线素材

取证与时间线素材
journalctl --since '2 hours ago' -u myapp --no-pager | head -50   # 服务侧时间点
git log --since='3 hours ago' --pretty='%h %ad %an %s' | head -20  # 变更来源
last -n 20                                    # 登录记录,确认操作者
ausearch -ts recent -m EXEC | tail -20        # 审计层面的执行记录
tail -n 100 run-*.log                         # 执行日志,用于核对实际命中主机
ps -eo pid,lstart,cmd | head -20              # 进程启动时间,辅助判断何时重启

改进项类型与验证

改进类型例子验证方式
技术防护增加范围校验或默认预演构造一次误操作场景验证被拦住
流程调整变更前需范围确认记录抽查最近若干次变更是否留存
监控补齐增加任务异常告警演练触发一次告警
预案完善补充回滚步骤与耗时非生产环境完整演练并计时
知识沉淀结论纳入检查清单检查清单实际被引用
原因要分成两层写:直接原因解释「为什么这次会坏」,促成条件解释「为什么它会一路通过到生产」。只写直接原因时,改进项往往停留在「以后注意」,而下一次换个触发方式依然会发生。
时间线要用统一时区与真实时间戳,不要凭记忆写「大概过了十分钟」。检测延迟与响应延迟是最有价值的两个数字,它们直接决定改进方向是补监控还是补流程。

易错点

  • 把复盘变成追责会:参与者开始隐藏细节,后续复盘得不到真实信息
  • 不量化影响面:只说「影响了服务」,无法判断改进项的优先级
  • 改进项无负责人与期限:结论停留在文档里,下一次事故重复出现
  • 只写直接原因:流程与监控层面的促成条件被忽略,防护体系没有变化
  • 时间线靠回忆:关键延迟数据失真,改进方向被带偏

数据来源与参考

  • Google SRE 手册:事故复盘与无责文化
  • NIST SP 800-61:事件处理与事后分析
  • ITIL 问题管理实践:根因分析

整理校对:其其网ICT文档中心 · 本页地址:docs.qiqicto.com/automation/automation-incident-postmortem-method.html

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌​​‌​‌‌‌‌​‌‌​​​​‌​‌‌‌​‌​‌​‌‌‌​‌​​​‌‌​‌‌‌‌​‌‌​‌‌​‌​‌‌​​​​‌​‌‌‌​‌​​​‌‌​‌​​‌​‌‌​‌‌‌‌​‌‌​‌‌‌​​​‌​‌‌‌‌​‌‌​​​​‌​‌‌‌​‌​‌​‌‌‌​‌​​​‌‌​‌‌‌‌​‌‌​‌‌​‌​‌‌​​​​‌​‌‌‌​‌​​​‌‌​‌​​‌​‌‌​‌‌‌‌​‌‌​‌‌‌​​​‌​‌‌​‌​‌‌​‌​​‌​‌‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌​​‌​‌‌​​‌​​​‌‌​​‌​‌​‌‌​‌‌‌​​‌‌‌​‌​​​​‌​‌‌​‌​‌‌‌​​​​​‌‌​‌‌‌‌​‌‌‌​​‌‌​‌‌‌​‌​​​‌‌​‌‌​‌​‌‌​‌‌‌‌​‌‌‌​​‌​​‌‌‌​‌​​​‌‌​​‌​‌​‌‌​‌‌​‌​​‌​‌‌​‌​‌‌​‌‌​‌​‌‌​​‌​‌​‌‌‌​‌​​​‌‌​‌​​​​‌‌​‌‌‌‌​‌‌​​‌​​​​‌​‌‌‌​​‌‌​‌​​​​‌‌‌​‌​​​‌‌​‌‌​‌​‌‌​‌‌​​