本文介绍日志服务告警功能的基本概念。

术语 说明
日志存储(Logstore) 日志服务提供Logstore用于存储日志类型的数据,并在日志存储的基础上提供查询和分析(SQL92语法)功能。告警监控任务依赖于查询与分析功能。
时序存储(MetricStore) 日志服务提供MetricStore用于存储时序数据,并在时序数据存储的基础上提供查询和分析(SQL92语法、PromQL语法)功能。告警监控任务依赖于查询与分析功能。
告警(Alert) 独立表达时,代表一个告警事件(Alert event)。例如告警监控规则触发一个或多个告警后,通过告警管理系统传递给通知管理系统。

当告警与其他词组合时,代表告警功能对应的子系统、功能、实体、模块等。例如告警监控系统、告警监控规则等。

告警监控(Alert monitoring) 告警子系统,负责产生告警。告警监控系统由告警监控规则和资源数据等组成。

通过告警监控规则定期检查评估,根据监控编排逻辑评估查询和分析结果,触发告警或恢复通知,发送给告警管理系统。

告警管理(Alert management) 告警子系统,负责管理告警降噪和告警状态。告警管理系统由告警策略、告警事务管理和告警态势大盘等组成。

告警管理系统通过告警策略对所接收到的告警进行路由分派、抑制、去重、静默、合并等操作,然后发送给通知(行动)管理系统。告警管理系统还支持设置告警事务阶段和处理人。

通知(行动)管理(Action management) 告警子系统,负责管理告警的通知渠道和对象。通知(行动)管理系统由行动策略、内容模板、日历、用户、用户组、值班组和渠道额度等组成。

通知(行动)管理系统通过行动策略将告警动态分派给特定的通知渠道,再通知给目标用户、用户组或值班组。通知(行动)管理系统还支持告警通知升级、自定义告警通知内容等操作。

开放告警(Alert Hub) 告警子系统,负责接收外部的监控系统数据。开放告警系统由开放告警服务和开放告警应用等组成。

每个开放告警应用对外提供一个端口,接收来自于外部告警监控服务(例如Zabbix、Prometheus)触发的告警(包括恢复通知),预处理后发送给告警管理系统进行后续处理。

告警监控

告警监控系统负责产生告警,由告警监控规则和资源数据等组成。告警监控系统的架构图如下所示:

告警监控
术语 说明
告警监控规则(Alert monitoring rule) 告警监控规则包括告警监控相关的配置,例如查询和分析语句、查询和分析的对象(日志库、时序库和资源数据)以及相关的监控编排等配置项。更多信息,请参见创建日志告警监控规则
资源数据(Resource data) 日志服务提供独立的、可修改的、表格形式的存储结构,用于存储告警系统所使用的各个资源配置和自定义的数据。资源数据主要用于告警监控的关联查询,例如黑白名单场景。

更多信息,请参见创建资源数据

告警严重度(Alert severity) 告警的非标识性属性,表示告警严重程度,包括严重、高、中、低和报告。更多信息,请参见设置告警严重度

开放告警系统接收到告警后,将根据应用协议自动适配对应的告警严重度。如果没有匹配成功,则默认表示中级告警。

分组评估 分组评估是告警监控规则中的一个参数。当告警监控系统对查询和分析结果进行计算时,可基于特定字段进行分组,每个分组单独评估触发条件并触发告警。即您可以使用一条告警监控规则同时监控多个目标,并对每个分组进行独立的告警管理和事务管理。更多信息,请参见分组评估
评估表达式 评估表达式是一个支持特定评估语法的计算表达式,用于配置告警触发条件或者动态评估告警的严重度。

评估表达式支持使用查询和分析结果中的字段进行逻辑比较和判断计算。当结果为true时,表示匹配。更多信息,请参见评估表达式语法

告警标签(Alert label) 告警的标识性属性,键值对格式。例如您可以在告警监控规则中自定义标签,触发后的告警将被附加对应的标签信息。标签可在告警内容模板中被引用,也可在告警管理和行动管理中作为告警属性进行告警管理和通知渠道分派。
  • 您在监控时序库时,如果按照标签进行分组评估,日志服务会自动将时序库中的查询和分析结果的标签作为触发告警的标签。
  • 您在监控日志库时,如果选择特定一个或多个字段做分组评估,日志服务会自动将该分组字段的键值对作为告警的标签。

更多信息,请参见标签

告警标注(Alert annotation) 告警的非标识属性,键值对格式。例如您可以在告警监控规则中自定义标注,触发后的告警将被附加对应的标注信息。标注可在告警内容模板中被引用,也可在告警管理和行动管理中作为告警属性进行告警管理和通知分派。更多信息,请参见标注
恢复通知(Resolved alert) 恢复通知是特殊的告警通知,其告警状态为恢复,普通告警的状态为触发。当您开启该功能后,如果告警监控系统上次执行检查时查询和分析结果触发了告警,而本次检查时查询和分析结果不满足触发条件,则会发送一条恢复通知。在密集监控场景中,您可以开启恢复通知功能,便于及时感知异常恢复情况。更多信息,请参见恢复通知

告警管理

告警管理系统负责管理告警降噪和告警状态,由告警策略、告警事务管理和告警态势大盘等组成。告警管理系统的架构图如下所示:

告警管理
术语 说明
告警策略(Alert policy) 告警策略是告警管理系统的配置实体,也是告警监控规则、开放告警应用中的一个参数。当告警管理系统接收到告警(包括恢复通知)时,自动根据告警策略进行告警降噪与合并控制,将合并后的告警集合发送给通知(行动)管理系统进行告警通知。
告警指纹(Alert fingerprint) 告警管理系统在处理告警时,为每个告警计算一个指纹信息,拥有相同指纹的告警被认为是同一条告警。告警的指纹信息计算依赖于告警的标识性属性,包括所属阿里云账号ID、告警所在项目、告警规则ID和告警标签。更多信息,请参见基于告警指纹去重
告警静默(Alert silence) 告警策略的配置项,也是告警管理中的一个步骤。告警管理系统根据静默策略,忽略静默时间内符合条件的告警,即不发送告警通知。更多信息,请参见告警静默机制
告警抑制(Alert Inhibition) 告警策略的配置项,也是告警管理中的一个步骤。告警管理系统接收到告警后,按照告警策略中的抑制策略,阻止与该告警相关的其他告警通知。例如:当K8s集群发生严重告警时,您希望暂时忽略该集群的其他非严重告警,则您可以根据需求,创建告警抑制策略。更多信息,请参见告警抑制机制
告警合并 告警策略的配置项,也是告警管理中的一个步骤。告警管理系统接收到告警后,按照告警策略中的合并策略,对符合条件的告警进行合并分组,并归到合并集合中。合并集合在经过延迟、去重等操作后,被发送到行动(通知)管理系统中进行告警通知。更多信息,请参见多种告警分组合并
合并集合 用于存放被合并分组后的告警数据,包含一个或多个不同指纹的告警。在经过延迟、去重等操作后,合并集合被发送到通知(行动)管理系统中进行告警通知。
告警事务(Alert incident) 合并集合中的告警被发送到告警管理系统中,通过告警策略进行处理(路由合并)时,自动创建一条对应的告警事务。您可以在控制台上设置告警事务的阶段和处理人。告警事务阶段包括确认、解决、忽略和待确认等。更多信息,请参见告警事务阶段切换

日志服务支持与告警事务相关联的告警的状态自动同步以及告警通知升级。例如一个告警事务被设置为解决后,告警管理系统再次收到告警时,告警事务会被重置为待确认阶段。一个告警事务被确认后,如果收到关联告警的恢复通知,则自动设置为完成(已解决)。

通知(行动)管理

通知(行动)管理系统负责管理告警的通知渠道和对象,由行动策略、内容模板、日历、用户、用户组、值班组和渠道额度等组成。通知(行动)管理系统的架构图如下所示:

行动策略
术语 说明
行动策略 行动策略是通知(行动)管理系统的配置实体。告警管理系统接收到告警合并集合(包括恢复通知)后,将每个告警合并集合发送给通知(行动)管理系统,根据通知(行动)管理系统中的行动策略动态分派给特定通知渠道,再通知给目标用户、用户组或值班组。也支持告警事务未及时处理下的通知升级。

您还可以在行动策略中配置告警通知升级规则。

如何创建行动策略,请参见创建行动策略

Webhook集成 Webhook集成用于管理Webhook通知渠道,您可以在行动策略中直接使用已创建的Webhook。目前,日志服务支持钉钉、企业微信、飞书、Slack以及自定义的通用Webhook。更多信息,请参见Webhook集成
告警升级(Alert escalation) 告警通知升级是指目标告警事务未被及时确认、完成时,日志服务自动使用第二行动列表中的策略进行通知,确保告警事务被及时处理。更多信息,请参见告警通知升级机制
内容模板 日志服务按照内容模板中定义的内容给您发送告警内容。内容模板针对每个主要渠道提供对应的文字模板,支持通过变量引用告警属性。对于WebHook渠道,还可额外配置消息实体的格式,以便适配特定的协议。例如企业微信的格式要求。更多信息,请参见创建内容模板
日历 通知(行动)管理系统中独立的资产配置。包括全局默认日历和自定义日历。
  • 全局默认日历定义了全局的日历信息,包括时区、节假日同步国家、每周工作日以及工作日的具体时段。

    行动策略中发送时段基于全局默认日历判断工作日、非工作日、工作时间和非工作时间。

  • 自定义日历用于自定义工作日和节假日的时间段,是值班组独有的工作日历。
用户 代表具体接收人的配置实体,包含用户ID、用户名、电话号码和邮箱等信息。您可以通过行动策略,将目标告警通知发送给目标用户。您还可以在告警事务管理中,将事务处理人设置为目标用户。

如何创建用户,请参见创建用户

用户组 代表用户的虚拟集合的配置实体,包含用户组标识符、组名和用户列表等信息。一个用户组可包含一个或多个用户。您可以通过行动策略,将目标告警通知发送给目标用户组。

如何创建用户组,请参见创建用户组

值班组 代表用户、用户组值班集合的配置实体,包含值班组标识符、组名、轮岗配置、代班配置以及关联的日历等信息。一个值班组可包含一个或多个用户或用户组。您可以通过行动策略,将目标告警通知发送给目标值班组。

如何创建值班组,请参见创建值班组

轮岗 值班组中的配置项,用于设置用户或用户组的轮岗计划。一个值班组中可添加多条轮岗计划。轮岗支持非连续的时间段排班,支持动态按照日历进行交班。

更多信息,请参见轮岗与代班场景

代班 值班组中的配置项,用于设置用户或用户组的代班计划。一个值班组中可添加多条代班计划。

更多信息,请参见轮岗与代班场景

渠道额度 日志服务支持配置短信、语音和邮件渠道的日额度。当接收人的日渠道额度被用完后,当天将不再通过该渠道发送告警通知。其具体粒度为每个接收人每天的额度。

如何配置渠道额度,请参见配置渠道额度

开放告警

开放告警系统负责接收外部的监控系统数据,由开放告警服务和开放告警应用等组成。

术语 说明
开放告警应用 开放告警应用表示开放告警对特定协议、应用的接口配置,例如Grafana告警、Prometheus告警等。默认其支持全地域的局域网和公网域名端口,提供HTTP、HTTPS协议。接收到第三方的告警后,通过预设的告警策略进行告警管理。
开放告警服务 开放告警应用的容器或命名空间。用于包容多个开放告警应用。例如某个运维团队接收来自Grafana、Prometheus应用的告警,其对应的2个开放告警应用,可以放在同一个开放告警服务中。