FlashDuty Changelog 2023-07-24

于双羽@快猫星云 2023年7月24日

FlashDuty:一站式告警响应平台,前往此地址免费体验!

每天进步一点点,FlashDuty今天正式推出7月更新,希望您喜欢。我们做了很多变更,关键点如下

  • 告警降噪:引入告警聚合、风暴预警和故障收敛,增强告警降噪能力;
  • 故障管理:支持自动分派、强制升级、聚合视图、操作类通知,增强故障协同能力;
  • Webhook集成:支持按照协作空间和类型过滤事件,更灵活的选择集成事件。

告警降噪

随着基础设施和业务的复杂度提升,我们的系统每天会产生大量告警事件。过多的告警,不但会牵扯研发和运维同学很多精力,也会导致oncall人员对告警的敏感度下降,甚至因此错过关键告警。FlashDuty将告警分为两类,分别加以解决:

  1. 短时间内发生大量相似告警,我们称之为告警风暴,通过告警聚合来解决;
  2. 部分告警频繁的发生、恢复、然后再发生,我们称之为告警抖动,通过抖动收敛来解决。

新增告警聚合,基于规则自动聚合相似告警

现在您可以按照告警标题、严重程度以及告警的标签信息,来组合设置聚合规则,将相似告警合并为故障,减少通知频次,提升处理效率。如下图所示,我们设置的是:

  1. 系统产生新告警,并自动生成新故障,分派和通知故障;
  2. 系统持续产生新告警,当告警标题或resource标签(代表告警对象)与故障相同时,将告警合入故障;
  3. 故障只聚合临近10分钟内发生的告警,超过时间窗口的告警,将生成一个新故障;
  4. 当故障聚合超过10条告警时,触发风暴预警。
drawing
  1. 您可以通过实时预览降噪结果来调整规则,以达最佳效果。注意:
    1. 系统至多抓取最近10000条告警事件作为实验数据;
    2. 系统至多展示100条聚合结果。
drawing

设定抖动阈值以及收敛时长

对于频繁发生与自动恢复的故障,可以设定阈值,限制触发通知频率,避免持续接收相同且无需立即处理的告警。如下图所示:

drawing

故障管理

从今天开始,告警将自动生成故障,您处理和接收的通知对象将从告警转变为故障。除了自动聚合生成,故障也可以手动创建。

理解事件=>告警=>故障之间的关系

请不要将故障理解为告警的升级状态,故障仅仅是告警的一种聚合呈现,当故障仅有一条关联告警时,故障等同于一条告警。

  • 事件:Event,告警系统(如Zabbix)上报的原始告警事件,可能为发生或恢复状态;
  • 告警:Alert,基于告警信息将不同的 Event 串起来,用于回溯告警的历史状态变化;
  • 故障:Incident,基于规则,将相似告警进行聚合所得到的对象,处理一条故障等于同时处理多个告警。

可以将三者简单理解为从点到线到面的降噪过程,如下是一个告警详情页对三者的展示,一个故障详情可以完整回溯到整个告警的历史变化情况:

drawing

故障的分派、升级和通知

通知策略现在升级为分派策略,新生成的故障,将按顺序匹配分派策略,匹配后立即分派处理人员,进行通知并停止匹配。更详细的升级点如下:

  1. 单聊渠道支持遵循个人偏好,每个人可以设置不同的故障通知接收方式
  2. 升级分派可以在超时且未关闭即升级超时且未关闭且无人认领才升级之间进行选择,前者可理解为强制升级
  3. 升级分派属于重新分派,故障将转交给升级环节的人员列表
drawing
  1. 操作记录现在会展示更详细的通知过程,包括推送失败的原因,如下图所示:
drawing
  1. Webhook 机器人增加了操作类通知,您可以及时获得处理进度更新,以企业微信为例:
drawing

Webhook集成

支持筛选协作空间和事件类型

  • 选定部分空间,仅推送指定空间的事件;
  • 选定部分事件,仅推送指定类型的事件。
drawing

感谢

感谢您的阅读,更多变更细节,请前往控制台体验!

开源版
Flashcat
Flashduty