基础指南

故障排查方法

建立从现象、假设、证据到根因的诊断过程。

更新于
运行与改进 / 工程与运行定位整体框架 ↗
运行与改进 × 工程与运行:当前工作是控制影响并诊断故障,产出恢复、根因与改进;显示相关阶段和相邻领域
本页目录

第一步:控制影响

确认受影响的用户、业务、区域、版本和开始时间。需要时先隔离、降级或回退,止损优先于寻找完整根因。

第二步:建立时间线

记录最后一次正常时间、首次异常时间以及期间发生的发布、配置、数据、证书、网络和依赖变化。

第三步:形成假设

每个假设必须能被一个观察或实验支持或否定。优先验证概率高、影响大且验证成本低的假设。

第四步:分层定位

用户入口 → DNS/CDN → 网络 → 应用 → 依赖服务 → 数据库 → 数据 → 外部接口。一次只改变一个变量,避免制造新的不确定性。

第五步:验证恢复

修复后验证技术指标、核心业务、历史数据、告警状态和持续稳定性。不能以“错误日志不再出现”代替业务验证。

故障案例模板

故障现象 → 影响范围 → 时间线 → 证据 → 假设与排除 → 根因 → 临时处置 → 永久修复 → 验证 → 预防措施。

可证伪的诊断表

现象假设检查排除条件
用户等待但任务成功前端状态未刷新对照任务状态与请求时间任务本身仍未完成
所有草稿变慢模型或共享依赖退化拆分链路耗时耗时集中在本地排队
只有一类手册无答案版本过滤或解析失败对照批次与候选片段片段存在且进入候选
写入重复超时后重试未幂等同业务键追踪请求只有一个实际写入

合成故障时间线

10:00 激活候选索引;10:05 部分旧设备问题无结果;10:08 暂停扩大流量;10:12 发现型号字段归一化错误;10:20 恢复上一仍获授权的索引。以上时间为教学示例,不是真实事故记录。

复盘区分触发因素、直接机制与组织改进:索引切换是触发,字段丢失是机制,缺少旧型号回归是待改进控制。不能只把根因写成“人为失误”。

练习与完成标准

保留变更前后证据,写出至少两个被排除的假设,并由他人复核恢复后的用户任务。使用故障复盘模板指定行动负责人和验证日期。

参考阅读与使用边界

本页为基础指南;生产操作需结合实际版本、授权环境与审核证据验证。

Markdown 原文反馈本页问题 ↗