前言
SLS告警支持丰富的告警管理功能,例如合并抑制静默等功能,跟SLS旧版告警相比增加了很多告警降噪抑制的功能,和用户管理,值班组和可定制复用的内容模板功能。在使用的过程中,因为增加了告警的降噪功能,从告警产生到发送通知这个过程增加了一个告警降噪的过程;因为降噪机制的存在,可能会出现告警触发但不一定会立即发出通知的情况。了解SLS告警通知时机将有助于理解这些情况。
本文将以此为背景,介绍SLS告警发出通知的时机。
简单告警系统通知流程
一般的告警监控系统会包括告警监控和告警通知,告警监控会不断的检测监控目标是否满足设置的触发条件,如果满足触发条件,则会生成一条告警,然后将告警信息通知出去。这个过程中几乎没有告警降噪的处理,或者仅有一些简单的降噪,比如可以设置连续触发阈值,连续满足触发条件N次后才触发告警。
SLS告警的通知流程
首先看下SLS的告警管理架构图:
- 告警源:包括SLS的告警监控系统和开放告警系统,开放告警可以接入Zabbix,Prometheus,Grafana,DataDog,CloudWatch等十多种告警监控系统,这些系统产生的告警会发送到SLS告警管理系统。
- 告警管理:包括了告警的降噪功能,主要包含合并,抑制,静默等功能,这些配置统称为告警策略。
- 通知管理:主要包括了行动策略的配置,行动策略可以理解为通知渠道的配置,比如配置发送渠道为短信,语音,钉钉,Slack等。
本文主要关注告警如何发出通知,告警策略的配置会影响告警发出通知的时机。在SLS控制台新建告警策略,会出现配置页面,可以添加一个分组合并配置,如下图所示。
分组合并配置中主要包括三部分内容:
- 合并基准:表示告警源产生的告警按照什么字段合并到一个组里面,在发送通知时,一个组里面的告警会一起发送。
- 行动策略:表示发送通知的渠道配置。
- 等待时间:包括首次等待,变化等待和重复等待时间,本文也将通过这几个概念来介绍告警通知的时机。
SLS告警通知的时机
告警策略的概念在SLS告警的帮助文档中有很详细的介绍,可以通过告警降噪控制来查看。
这里假设用户已经理解了路由合并的概念,不熟悉的用户可以参考路由合并。在告警合并后,会产生一个或多个合并集合,三个等待时间也是在集合的基础上起作用。
下面以一张图,来展示从告警产生到合并到某个集合中,到发送通知的整个过程。
上图中三角形和圆形表示告警源在不断的产生告警,这些告警可能来自SLS告警监控,也可能来自第三方告警监控平台,比如Zabbix,Prometheus等。
产生的告警会首先进入配置好的告警策略,按照告警策略中的合并基准进行合并,合并后的告警会分配到一个合并集合中,上方小方框代表一个合并集合。
图中概念解释:
- group_wait: 首次等待时间。
- group_interval: 变化等待时间。
- repeat_interval: 重复等待时间。
- check:会判断是否需要发送通知,如果不满足发送通知条件,不会发送通知。
接下来以一个合并集合为例,来解释这个合并集合发送通知的时机。
group_wailt
从第一个告警进入某个告警集合开始,此时时刻假设为0,SLS经过group_wait时间后,会将该集合中的告警根据行动策略通知出来。在这个过程中可能会有新的告警进入同一个合并集合中,在通知时会将集合中的所有告警信息合并发送。
group_interval
从第一个group_wait发送之后,每隔group_interval,SLS会判断该集合是否需要发送通知,这个过程中如果该集合中一直有告警产生,在group_interval到达时会发送通知;如果其中有告警恢复,在group_interval到达时,也会一并将告警恢复信息发出。
在group_interval达到时,SLS会判断是否需要发出通知,不是一定会发出通知。
通过上述group_wait和group_interval的概念可以得出:
SLS第一次发出通知的时机是group_wait后,后面的通知时机都是每经过group_interval时间。
repeat_interval
repeat_interval表示同一个告警集合在不变的情况下,连续多长时间不在发送通知,是一种有效的减少告警风暴的设置。告警集合不变的解释可以参考【链接】
在告警抑制,告警静默的场景中同样遵循上述通知时机,限于篇幅本文对告警抑制和静默不做过多介绍,本文主要关注在通知时机上。
总结
通过上述的分析,介绍了SLS告警的告警通知时机,了解了告警通知时机,有助于我们对SLS告警的降噪机制的使用,也可以自行对告警通知进行分析;
在开放告警中,通过第三方平台产生的告警,也可以配置相应的告警策略进行降噪处理。
参考
进一步参考
- SLS(日志服务)云原生观测分析平台:https://www.aliyun.com/product/sls
- SLS新版告警文档首页:https://help.aliyun.com/document_detail/207609.html
- 欢迎扫群加入阿里云-日志服务(SLS)技术交流(集团同学请直接搜索群号11702236加入), 获得第一手资料与支持
- 后续系列直播与培训视频会同步到B站,敬请留意