Opsgenie 的警报和待命功能现已在 Jira Service Management 和 Compass 中可用。使用我们的自动迁移工具在 2027 年 4 月 5 日之前迁移现有的 Opsgenie 数据和配置。了解更多

事件事后分析流程:跟踪、记录和改进

关键要点

  • 事件事后分析有助于团队厘清事件经过、原因及所需改进措施,以避免同类问题重复发生。

  • 将 Jira Service Management、Confluence 和 Jira 结合使用,可搭建贯通响应、文档记录与后续跟进的工作流。

  • 一致的事后分析模板能简化事件复盘的归档与对比工作,便于长期总结经验。

  • 将纠正措施转化为指定负责人和截止时间的 Jira 工作项,可助力团队将经验教训落地为实际改进。

当生产环境出现问题时,修复只是开始。同样重要的是了解事件发生的原因,并确保不会以同样的方式再次发生。

事件事后分析是对事件从开始到结束的结构化复盘,涵盖出现故障影响范围、团队响应方式以及未来需要改进的事项。

依托事件响应计划模板指导流程,团队可统一归档每一次事件,避免遗漏关键信息,让每次复盘都能带来实质改进。

运作机制:管理事件并记录事后分析

完善的事件管理不仅仅是应急救火,更要搭建一套体系,让每一次事件都反哺流程优化、工具升级与后续预案完善。结合使用 Jira Service Management、Confluence 和 Jira,可为团队搭建贯通的工作流,覆盖完整的事件响应生命周期:从警报触发,到事后分析,再到后续跟进。

这种方法可实现所有事件文档统一规范留存,并建立清晰的责任追溯链条。告别事件信息零散散落于 Slack 消息、电子邮件和个人记忆的情况,所有内容统一留存于一个互联互通的生态系统中,便于复盘、查阅与落地执行。这种一致性也能让事件响应计划模板始终处于流程核心位置,而非变成团队有空才补填的东西。

以下是各个阶段的流程拆解说明:

在 Jira Service Management 中管理事件

Jira Service Management 是您事件响应的起点。一旦出现问题,即刻在 JSM 中记录事件、设定严重性等级,并分配合适的响应者。

在事件处理期间,团队可以使用 JSM 完成以下工作:

  • 实时跟踪行动、决策和上报

  • 清晰记录参与人员及所有变更内容

  • 记录详细信息,为后续事后分析提供支持

  • 及时向管理层同步进展,同时不干扰响应者的工作

由于 JSM 可与 Confluence 及 Jira 实现集成,事件处置过程中收集的数据,能够直接同步至事后分析文档与跟进工作。对于将 JSM 纳入整体 ITSM 软件的团队而言,事件数据还能为更大范围的服务管理提供数据支撑。

JSM 还能通过帮助团队完成以下工作,助力他们在整个响应过程中做好事件沟通

  • 持续向客户、支持团队及利益相关者同步最新进展

  • 减少事件处理期间的混乱

  • 实时同步事件状态与影响范围,提升透明度

  • 在高严重性事件或危机管理场景中更清晰地沟通

待事件解决完毕时,团队已留存详实的事件发展全过程记录,既便于记录事后分析,也能让事后分析对未来改进更有用。

在 Confluence 中记录事后分析

事件解决后,应在细节仍清晰时(理想情况下 24 至 48 小时内)完成记录。拖延时间越长,相关背景信息流失越多,事后分析的价值也就越低。

使用事件事后分析模板创建专属的 Confluence 页面,并逐一填写各个板块:事件时间线、根本原因分析、影响评估以及经验教训。本页面提供的事件响应模板包含一套完整框架,团队可复制该框架并为每个新事件填写内容,无需每次都从零开始梳理需记录的内容。

将事后分析留存在 Confluence 具有以下几项实际优势:

  • 团队全员可见:从研发人员到管理层,均可自行查阅事件始末,无需再追着让待命响应者口头重述要点。

  • 规律问题识别:所有事件采用统一格式记录后,更容易跨季度发现重复故障与系统性短板。

  • 无追责式文档记录:结构化的的事件响应模板能让讨论聚焦于系统和流程本身,而非相互追责,从而形成更客观、更有价值的报告。

  • 新员工更快上手:新团队成员可查阅历史事后分析,了解系统在高压力下的运行表现,以及团队从过往事件中总结的经验教训。

如需更深入了解如何开展高效的事后分析复盘,请阅读我们的事件事后分析手册

将跟进事项纳入 Jira 工作项进行跟踪

事后分析的价值完全取决于它所能推动的行动。复盘过程中发现的每一项整改措施及反复出现的问题,都应转化为 Jira 工作项,并明确负责人与截止时间。

这一步是能真正实现优化改进的团队,与反复陷入同类问题的团队之间的分水岭。当整改措施以可追踪工作项的形式留存在 Jira 中时,管理者可以监控进度,团队也能相互监督,落实已达成共识的优化任务。同时也便于优先级排序。由事件推动的工作与待办事项列表其余事项一并留存后,更便于于其他优先事项进行权衡,避免此类工作被悄然搁置、无人跟进。

合适的事件管理工具可端到端连接整个工作流。当响应、文档和跟进体系集成后,从发现问题到防范问题再次发生之间的周期会大幅缩短。

事件响应模板

以下是一份事件响应计划模板,团队可复制并根据每个新事件进行调整。该模板涵盖事后分析的每个阶段,从初始摘要、事件时间线,到根本原因分析、经验教训总结以及整改措施,一应俱全。对每个事件使用一致的结构,可确保不会遗漏任何内容,同时也便于长期对比各次事后分析内容。

模板内的示例仅作参考起点,并非刻板照搬的范本。请根据所在组织的实际运作模式,调整语言表述与信息详略程度。其目标是:完整记录足够的背景信息,确保即便数月后有人查阅这份事后分析,也能清晰了解事件始末以及团队采取的应对措施。

事件摘要

用几句话概括事件。包括具体情况、原因、严重性以及影响持续的时间。

示例:

在 {DATE}的 {time range of incident, e.g. 15:45 and 16:35} 期间,有 {NUMBER} 名用户遇到了{EVENT SYMPTOMS}。

该事件由 {TIME OF CHANGE THAT CAUSED THE EVENT} 的一项{CHANGE}触发。

此次{CHANGE}内容如下:{DESCRIPTION OF OR REASON FOR THE CHANGE, such as a change in code to update a system}。

此代码中的一个缺陷导致了{DESCRIPTION OF THE PROBLEM}。

该事件由 {MONITORING SYSTEM} 检测到。团队通过{RESOLUTION ACTIONS TAKEN}启动了事件处理流程。

该事件的严重级别为{SEVERITY LEVEL},影响了 {X%} 的用户。

事件造成的进一步影响包括:因此事件产生了{e.g. NUMBER OF SUPPORT TICKETS SUBMITTED, SOCIAL MEDIA MENTIONS, CALLS TO ACCOUNT MANAGERS}。

致因

描述导致事件发生的事件序列,例如,之前的更改引入了尚未检测到的缺陷。

示例:

在 {MM/DD/YY}的 {16:00}({AMOUNT OF TIME BEFORE CUSTOMER IMPACT, e.g. 10 days before the incident in question}),为实现{THE CHANGES THAT LED TO THE INCIDENT},我们向 {PRODUCT OR SERVICE} 实施了一项变更。

此更改导致{DESCRIPTION OF THE IMPACT OF THE CHANGE}。

故障

描述所实施的变更如何未能按预期生效。如果可行,请附上可视化的相关数据屏幕截图,以说明故障。

示例:

向 {XX%} 的请求错误发送了 {NUMBER} 条响应。该问题持续了 {TIME PERIOD}。

影响

描述事件发生期间,事件如何影响内部和外部用户。包括提出的支持案例数量。

示例:

在 {MM/DD/YY} {XX:XX UTC and XX:XX UTC} 期间,总计 {XXhrs XX minutes},我们的用户遇到了该事件:{SUMMARY OF INCIDENT}。

该事件影响了 {XX} 个客户(占 {SYSTEM OR SERVICE} 用户总数的 X%),受影响用户遇到的事件症状如下:{DESCRIPTION OF SYMPTOMS}。

提交了 {XX NUMBER OF SUPPORT TICKETS AND XX NUMBER OF SOCIAL MEDIA POSTS}。

检测

团队何时发现这起事件?他们如何知道事件正在发生?我们怎样才能缩短检测时间?请考虑以下问题:我们怎么能将缓解时间缩短一半?

示例:

当{ALERT TYPE}被触发且{TEAM/PERSON}收到呼叫时,该事件被检测到。

随后,{SECONDARY PERSON}收到呼叫,因为{FIRST PERSON}不负责向磁盘写入的服务,这导致响应延迟了 {XX MINUTES/HOURS}。

{DESCRIBE THE IMPROVEMENT}将由{TEAM OWNER OF THE IMPROVEMENT}推进落地,预期达成{EXPECTED IMPROVEMENT}。

响应

谁对这起事件做出了回应?何时以及如何响应的?请注意任何延迟或响应障碍。

示例:

在 {XX:XX UTC} 收到呼叫后,{ON-CALL ENGINEER}于 {XX:XX UTC} 在 {SYSTEM WHERE INCIDENT INFO IS CAPTURED} 上线响应。

该工程师缺乏 {AFFECTED SYSTEM} 相关背景知识,因此于 {XX:XX UTC} 向{ESCALATIONS ON-CALL ENGINEER}发送了二次警报,后者于 {XX:XX UTC} 加入事件处理沟通渠道。

恢复

描述服务的恢复过程以及事件的结束过程。详细说明服务成功还原的过程,您了解需要采取哪些步骤进行恢复。

根据具体情况,请考虑以下问题:如何缩短缓解时间?您如何将缓解时间缩短一半?

示例:

我们采用三管齐下的方法来恢复系统:

{DESCRIBE THE ACTION THAT MITIGATED THE ISSUE, WHY IT WAS TAKEN, AND THE OUTCOME}

示例:增加 BuildEng EC3 ASG 的大小,以增加可为工作负载提供支持的节点数量,降低调度超额订阅节点的可能性

  • 禁用 Escalator 自动扩展器以防止群集大幅缩减

  • 将 Build Engineering 调度器恢复为先前版本。

时间线

详细说明事件时间线。我们建议使用 UTC 对时区进行标准化。

包括任何值得注意的向导事件、任何活动的开始、第一个已知影响以及上报。记录所做的任何决定或变更、事件的结束时间,以及任何值得注意的后续事件。

示例:

所有时间均为协调世界时。

11:48 - K8S 1.9 控制面板升级完成 

12:46 - 升级到 V1.9 完成,包括集群自动扩展器和 BuildEng 调度器实例 

14:20 - Build Engineering 向 KITT Disturbed 报告问题

14:27 - KITT Distribled 开始调查特定 EC2 实例 (ip-203-153-8-204) 的故障

14:42 - KITT Disturbed 封锁节点 

14:49 - BuildEng 报告该问题影响不止一个节点。86 个问题实例表明失败更具系统性

15:00 - KITT Distribled 建议切换到标准调度程序

15:34- BuildEng 报告 200 个容器集出现故障

16:00- BuildEng 使用 OutofCPU 报告终止所有失败的构建

16:13 - BuildenG 报告说,新构建反复出现故障,而且不是短暂的。

16:30 - KITT 将故障识别为事件,并将其作为事件执行。

16:36 - KITT 禁用了 Escalator 自动扩展器以防止自动扩展器删除计算,从而缓解该问题。

16:40 - KITT 确认 ASG 处于稳定状态,群集负载正常,客户受到的影响已解决。

模板:

XX:XX UTC - 事件动态;采取的操作

XX:XX UTC - 事件动态;采取的操作

XX:XX UTC - 事件动态;采取的操作

确定根本原因:五问法

五问法是一种根本原因识别技巧。您可以这样来运用此方法:

  • 首先描述事件影响,然后询问发生的原因。

  • 记下它产生的影响。

  • 询问为什么会发生此情况,以及为什么会产生影响。

  • 然后,不断地问为什么,直至找出根本原因。

在您的事后分析文档中列出“原因”。

示例:

  1. 应用发生中断,因为数据库被锁定

  2. 数据库被锁定,因为对数据库的写入过多

  3. 因为我们向服务提送了一项变更,未意料到写入量会增高

  4. 因为我们没有针对负载测试变更建立相应的开发流程

  5. 因为我们从未觉得负载测试有必要,直到我们达到这个规模。

根本原因

请注意事件的最终根本原因,即确定需要更改的事物,以防止此类事件再次发生。

示例:

[存在问题的项目] 中的一个缺陷

待办事项检查

查看您的工程待办事项列表,了解是否存在任何计划外工作,防止发生此事件或至少减少其影响程度? 

对待办事项列表进行清晰评估,有助于弄清楚过去围绕优先级和风险做出的决策。

示例:

待办事项列表中没有可改进此服务的具体项目。有一个关于流程类型改进的说明,这些都是工作流程到位的持续任务。

改进集成测试的请求单已经提交,但到目前为止尚未成功。

重现

既然您了解了根本原因,您能否回顾以下其他可能具有相同根本原因的事件?如果是,请注意在这些事件中尝试了哪些缓解措施,并询问再次发生此事件的原因。

示例:

这一相同的根本原因导致了事件 HOT-13432、HOT-14932 和 HOT-19452 的发生。

吸取的经验教训

讨论事件响应中哪些方面进展顺利、哪些方面本可以改进,以及哪些方面有改进的机会。

示例:

  • 需要进行单元测试,以验证工作的速度限制器是否得到正确维护

  • 应审查非典型正常操作的批量操作工作负载

  • 批量操作应该缓慢启动并进行监控,如果服务指标有名无实,则会增加

纠正措施

描述为防止将来发生此类事件而下令采取的纠正措施。记录下负责人员、工作的截止时间以及工作的追踪区域。

示例:

  1. 暂时进行手动的自动扩展速度限制,以限制故障

  2. 单元测试和重新引入工作速度限制

  3. 引入辅助机制来跨群集收集分散的速度信息以指导扩展效果

为您推荐

教程

通过 Statuspage 了解事件沟通

在本教程中,我们将为您演示如何在中断期间使用事件模板进行有效沟通。可适应多种类型的服务中断。

了解更多有关事件管理的信息

在此中心查找更多事件管理指南和资源。

事件事后分析过程的重要性

事件事后分析,也称为“事后回顾”,是研究事件期间发生情况并总结经验教训的最佳方法。