如何做故障复盘

首先,我们一定要先搞清楚复盘的目的。复盘的目的是为了从故障中学习,找到我们技术和管理上的不足,然后不断改进。虽然我们不愿意故障发生,但是从故障中学习,反而是提升团队和员工能力的最佳手段,所以我们一定要辩证地看待故障这件事情。

同时,切忌将复盘过程和目的搞成追究责任或实施惩罚,这对于团队氛围和员工积极性的打击是非常大的。

在复盘过程中,技术支持仍然要起到关键作用。

  • 召集复盘会议。会提前将故障信息发给故障处理的参与方,准备复盘过程中需要讨论的问题,视情况决定是否邀请业务方人员参会;
  • 组织会议流程。协调和控制会议中的讨论,也就是俗称的控场;
  • 对故障定级定责。起到类似“法官”的判决作用,根据前面讲到的标准执行;
  • 明确后续改进行动及责任人,录入系统并定期跟踪。

复盘会议中,通常会有如下关键环节。

1、故障简单回顾。主要针对故障发生时间点,故障影响面,恢复时长,主要处理人或团队做简要说明。

2、故障处理时间线回顾。技术支持在故障处理过程中会简要记录处理过程,比如每个操作的时间点,责任人,操作结果,甚至是中间的沟通和协作过程,比如几点几分给谁打了电话,多长时间上线的等等,这个过程要求客观真实即可。业务恢复后,会发给处理人进行核对和补充。这个时间线的作用非常关键,它可以相对真实地再现整个故障处理过程。

3、针对时间线进行讨论。回顾完上述时间线之后,我们会提出过程中存在的疑问,这一点会对主要处理人产生一定的压力,所以一定要保持对事不对人。通常我们会针对处理时长过长、不合理的环节提出质疑,比如为什么告警没有发现问题,而是用户投诉反馈的?为什么从发生故障,到有人上线响应拖了很长时间?为什么对应的场景没有限流、降级和开关等预案?为什么预案执行了没有生效?为什么没有做灰度发布和验证等等?通过这些问题和细节的讨论,我们会找出明显的不足,记录下过程中的改进点。

4、确定故障根因。通过讨论细节,对故障根因进行判断,并再次对故障根因的改进措施进行讨论。在这个环节和上个环节中,通常会有很多讨论甚至是争论,技术支持要发挥的作用就是控制好场面,就事论事,一定不要让讨论失控,演变成相互指责和批斗会,一旦有这种苗头,技术支持一定要及时干预并给出警告。

5、故障定级定责。根因确定后,结合前面已经确认的故障影响面,就可以对故障定级定责了,这里还要依赖前面我们介绍到的故障标准。不过,定责时,会让责任方团队和相关处理人员在场,小范围告知,这样做主要是考虑责任人的个人感受。如果无异议,就形成故障完结报告;如果有异议,则可以向上级主管反馈,直至技术团队负责人(CTO 或技术 VP)为止。

6、发出故障完结报告。故障完结报告的主要内容包括故障详细信息,如时间点、影响面、时间线、根因、责任团队、后续改进措施,以及通过本次故障总结出来的共性问题和建议。这样做的主要目的是保证信息透明,同时引以为戒,期望其它团队也能够查漏补缺,不要犯同样的错误。

除了例行的故障应急和故障复盘,我们还会定期对一个时期内的故障案例进行总结。比如按照一个季度、半年和全年的周期,这样可以更容易地发现一些共性问题,以便于研发团队在稳定性建设方面的规划。

扫描二维码关注公众号,回复: 14911598 查看本文章

此文章为4月Day14 学习笔记,内容来源于极客时间《赵成的运维体系管理课》,推荐该课程。

猜你喜欢

转载自blog.csdn.net/key_3_feng/article/details/130162778
今日推荐