前言
在配置告警的过程中,常常需要了解告警的上下文,告警来源,告警严重度等,这些都可以叫做告警的属性。可以对其进行告警的管理,SLS新版告警包括监控和告警管理部分,其中监控部分主要是用来产生告警,既可以使用自定义告警规则来产生告警,也允许用户使用外部监控系统(如Zabbix, Promethus,Grafana)来产生告警,对于各类的告警,SLS新版告警系统将这些告警的属性进行了统一和规范,基于这个规范就可以借助SLS新版告警的管理系统,来对告警进行统一的降噪处理,告警升级,分派通知等功能。
告警属性介绍
说到告警,人们通常会关心告警来源,严重度怎么样,告警的一些简单描述信息,通过这些信息来判断需要进行哪些操作,在SLS新版告警中,对告警属性指定了统一的规范,在告警管理的过程中会使用这些标准的告警属性来进行降噪抑制通知等处理。
SLS新版告警的属性根据主要包含以下几部分内容,接下来本文将对告警属性进行简单的描述。
- 监控规则
- 告警信息
- 告警规则策略配置信息
- 开放告警配置
- 查询统计结果
监控规则
- 阿里云账号ID:关联的阿里云主账号ID。告警监控规则所在的阿里云账号ID或开放告警设置的阿里云账号ID。
- 告警类型:支持如下告警类型
- 告警监控规则:表示监控告警规则触发的告警。
- 开放告警:表示通过开放源接入的告警。
- 所属区域:指监控规则所在的项目的区域
- 所属项目:SLS新版告警监控规则是在某个项目下创建,这里指规则所在的项目
- 规则ID:在每个项目下,监控规则都有唯一的ID,作为告警规则的唯一标识
- 规则名:监控规则的名字,可由用户自定义
下面通过一个简单的示意图看下这些属性,在一个项目下,点击告警图标,从告警列表中选取一个监控规则,点开详情,即可看到规则名称,在URL中可以看到规则ID等
告警信息
- 告警状态:支持状态如下
- 告警触发:表示告警规则满足触发条件,并且满足连续触发阈值,会发出一条触发的告警信息
- 告警恢复:如果开启了告警恢复通知,在规则上次评估满足触发条件,本次评估不满足触发条件时,会发出一条恢复的告警信息
- 严重度:严重度支持严重,高,中,低和报告五种严重度,在监控规则中可以配置告警严重度,支持静态严重度和动态严重度的设置;对于静态严重度度,同一个监控规则产生的所有告警(分组评估时可能产生多条告警)都会是设定的严重度,对于动态严重度,监控规则会根据评估时动态严重度设定的条件,不同的告警可能会有不同的严重度。
- 标题:是监控规则的标注中指定的标题,
- 描述:是监控规则的标注中指定的描述。
- 标注:在监控规则中可以指定自定义的key和value,产生的告警会包含设定的标注信息,其中标题和描述是内置的标注。
- 标签:在监控规则如果使用了分组评估,分组评估指定的字段名会被自动添加到产生的告警的标签中,比如分组评估自定义字段为host,在产生告警后,标签中会包括host字段和值;同时也直指在告警规则中自定义标签key和value;标签可以作为告警指纹的一部分,标签与标注的不同可以参考【链接】
- 时间相关的属性
- 触发时间:是指本次告警触发的时间
- 首次触发时间:所属告警规则多次满足触发条件时,在未满足触发阈值时,告警不会发出;触发次数满足触发阈值时,会将告警发送到告警管理,这里的首次触发时间是指,首次触发时间
- 恢复时间:告警开启了恢复通知时,当评估时告警条件不满足触发条件时,会产生一条恢复告警信息,恢复时间即为评估时间。
以下可以通过一个例子来看下告警信息的内容,其中需要注意是标签会包括分组评估字段和自定义字段,标注会包括内置字段(title和desc),自定义字段,非分组字段(如果打开了自动添加标注开关);
这里的标签和标注都可以引用一些集合查询结果的变量,集合查询结果数据可能有多行满足触发条件的,标签和标注只能引用当前评估组内的第一行满足触发条件的值。例如:集合查询结果如下,包含三条数据,触发条件是有数据满足err_cnt > 60,这里第2,3条数据满足触发条件,这里如果引用${domain}或${err_cnt},会取第二条数据的值xxxx.aliyun.com和72
[ {"domain": "xxxx.aliyun.com", "err_cnt": "51"}, {"domain": "yyyy.aliyun.com", "err_cnt": "72"}, {"domain": "zzzz.aliyun.com", "err_cnt": "83"} ]
告警策略配置信息
- 告警策略ID:监控规则或开放告警产生的告警,发送到告警管理系统后,会使用告警策略来进行合并静默抑制等降噪处理,一个监控规则需要指定告警策略,来指定后续的降噪处理策略。
- 行动策略ID:监控规则或开放告警产生的告警,在需要进行通知处理时,需要指定相应的行动策略。
下面通过一个例子,来看告警策略和行动策略的配置,下面展示的是同一个告警策略和行动策略在不同模式下的展示方式,告警策略ID是sls.builtin.dynamic,行动策略ID是alert.simple.8xxx
开放告警配置信息
- 服务名:表示接入开放告警的服务名称
- 应用名:表示接入开放告警的应用名称
- 协议:表示接入开放告警的协议,如zabbix,promethus协议等
- 接入区域:表示接入开放告警的区域
下面通过一个例子,来看下开放告警的这些配置,在开放告警服务中展示的是服务的名称
点开应用按钮,弹出应用界面,显示是应用列表,显示名称和协议
点开接口按钮,弹出接口配置,显示地域和协议
查询统计结果
在自定义监控规则中,最多可以指定3个查询,每个查询包含查询的类型,时间和结果,在告警管理中可以对每个查询进行引用,包含查询的时间,查询分析语句,查询目标,区域,权限等。对于3个查询,分别可以用查询统计0,查询统计1,查询统计2来引用,每个查询的属性如下:
- 类型:支持如下查询统计类型
- 对日志库进行查询统计时,取值为日志库。
- 对时序库进行查询统计时,取值为时序库。
- 对资源数据进行查询统计时,取值为资源数据。
- 区域:对日志库和时序库进行查询统计时,取值为监控目标所在的区域,对资源数据进行查询统计时,无该参数。
- 项目:对日志库和时序库进行查询统计时,取值为监控目标所属的项目,对资源数据进行查询统计时,无该参数。
- 目标库:监控的目标库名称
- 查询关联的仪表盘:查询统计关联的仪表盘ID
- 使用服务角色:查询统计时的RAM角色标识
- 查询语句:对日志库和时序库进行查询统计时,取值为查询和分析语句。对资源数据查询时,无该参数。
- 查询起始时间:对日志库和时序库进行查询统计时,取值为查询时间范围的开始时间。例如2006-01-02 15:04:05。对资源数据查询时,无此参数。
- 查询结束时间:对日志库和时序库进行查询统计时,取值为查询时间范围的结束时间。例如2006-01-02 15:04:05。对资源数据查询时,无此参数。
下面以一个例子展示下参数,以下告警规则表示两个查询统计,可以在引用时使用查询统计0,查询统计1
点开第一个查询,弹出的查询统计页面会显示查询的每个信息
告警属性的应用
告警属性是指在告警产生时,生成的告警的信息;这些告警的内容会被告警管理用来降噪处理,也可以在行动策略中进行分派通知等。在SLS新版告警中是通过可视化编辑的方式来进行告警策略和行动策略的编辑。
在告警策略中,主要包括路由合并策略,抑制策略和静默策略;行动策略主要包括条件和行动组。
- 路由合并策略可以使用告警属性来设置合并基准,表示拥有某个共同告警属性的告警会被合并进行通知;
- 在抑制策略和静默策略中,告警属性主要用来设置条件,满足条件时进行抑制和静默;
- 在行动策略中,告警属性主要用来设置条件,当告警属性满足某些条件时,可以发送到指定的行动组。
下面一些例子,展示下告警属性的使用
告警策略配置
在配置告警策略时,界面上可以选择对路由合并策略,抑制策略,静默策略进行配置
路由合并策略
在告警策略中,选择路由合并策略,点击合并基准,下来框可以选择按照哪些告警属性进行合并;
也可以选择自定义,接着对告警属性进行选择,可以同时选择多个属性。
条件配置
在抑制策略,静默策略,行动策略中都可以通过设定条件来进行相应的操作。
抑制策略
下面的例子展示的出现告警严重度大于等于高时,对告警严重度小于等于中的告警进行抑制
静默策略
下面的例子展示的是告警属性中的告警标题,为测试告警时,在2021-06-06 17:09:59到2021-06-06 18:09:59之间,即使告警触发,也不执行行动策略,不进行通知。
行动策略
下面的例子展示是当时告警的严重度为严重时,发送语音给用户A,当严重度小于等于高时,发送短信给用户B;
总结
SLS新版告警对自定义告警规则和开放告警产生的告警属性进行了统一和规范,使用这些告警属性可以进行灵活的告警策略和行动策略的配置,特别是在各种条件的配置中可以实现很复杂的控制逻辑,满足各类业务和场景的需求,在告警管理的路由合并,抑制,静默中有很多的使用场景。
参考
进一步参考
- SLS(日志服务)云原生观测分析平台:https://www.aliyun.com/product/sls
- SLS新版告警文档首页:https://help.aliyun.com/document_detail/207609.html
- 欢迎扫群加入阿里云-日志服务(SLS)技术交流(集团同学请直接搜索群号11702236加入), 获得第一手资料与支持
- 后续系列直播与培训视频会同步到B站,敬请留意
最后,如果您还想了解更多智能运维前沿资讯,欢迎您报名参加【数智创新行·智能运维专场】。
6月25日|上海·西岸国际人工智能中心
数智创新行上海站·智能运维专场
阿里云将带来云原生智能运维解决方案,满足海量事件有效感知、高效响应,可观测数据统一分析、故障定位,以及基于AI的异常检测等需求,助力企业构建自己的运维平台,成为开发、运维人员高效可靠的助手。
扫描海报二维码或点击下方链接报名, 期待您一起开启智能运维新时代!
https://www.aliyun.com/page-source//developer/special/osssalon