告警

更新时间:
复制为 MD 格式

日志服务告警是一站式的告警监控、降噪、事务管理、通知分派的智能运维平台。

产品架构

日志服务告警系统由告警监控、告警管理、通知(行动)管理等子系统组成,具体架构如下图所示:

告警功能特性主要功能

类别

子类

功能点

说明

告警监控

基础能力

查询和分析日志

您可以使用日志服务的查询语法和标准的SQL92语法,执行查询和分析操作。更多信息,请参见基本语法

查询和分析时序数据

您可以使用标准的SQL92语法和PromQL语法,执行分析操作。更多信息,请参见时序数据查询和分析语法

机器学习

您可以使用预测、异常检测、根因分析等AIOps算法完成机器学习操作。更多信息,请参见机器学习语法

协同监控

多日志库(时序库)关联监控

您可以通过SQL Join语法或告警集合操作,实现多个日志库(时序库)关联监控。

日志库和时序库关联监控

您可以通过SQL Join语法或告警集合操作,实现日志库和时序库的关联监控。

Project关联监控

您可以通过告警集合操作,实现跨Project关联监控。

跨地域关联监控

您可以通过告警集合操作,实现跨地域关联监控。

跨账号关联监控

您可以通过告警集合操作,实现跨账号关联监控。

黑白名单监控

您可以通过资源数据,实现黑白名单监控。

监控规则编排

设置无数据告警

支持无数据告警。

设置告警严重度

支持静态或动态设置告警严重度。

设置标签与标注

支持自定义标签和标注,其中标注值可使用变量。

分组评估

支持对查询和分析结果进行分组。

告警恢复

支持告警恢复通知。

设置连续触发阈值

支持设置连续触发阈值,用于抑制告警。

关闭监控任务

支持暂停、永久关闭监控任务。

暂停时,可设置时间自动恢复。

告警管理

告警降噪

同一告警去重

时间窗口内,支持同一告警去重或延迟发送。更多信息,请参见基于告警指纹去重

告警分组合并

通过合并策略可将相同属性的告警合并为一个告警进行通知。更多信息,请参见多种告警分组合并

告警静默

您可以添加静默策略,在静默时间内,符合条件的告警,不会触发告警通知。

通知(行动)管理

行动策略

动态分派通知渠道

支持根据业务需求动态分派告警通知给特定通知渠道中用户、用户组或值班组。更多信息,请参见行动策略

通知对象

用户

独立用户。更多信息,请参见创建用户和用户组

用户组

包含多个用户。更多信息,请参见创建用户和用户组

值班组

支持创建值班组(用户和用户组),您可根据周期、工作时长等安排轮询值班。更多信息,请参见创建值班组

渠道日历

节假日感知

支持识别节假日,自动调整节假日时段的通知方式。

值班表

轮岗

支持根据特定周期自动给多个用户、用户组轮岗排班。

代班

支持在特定时间内让临时员工代班。

节假日感知

可根据节假日自动调整轮岗或代班安排。

独立日历

支持值班组配置单独的日历,支持重置。

通知渠道

短信通知

通过短信发送告警内容。

语音通知

通过语音发送告警内容。

邮件通知

通过邮件发送告警内容。

钉钉通知

通过钉钉机器人发送告警内容。

WebHook通知

通过HTTPHTTPS调用,将告警通知发送到自定义的WebHook地址。

通过WebHook方式,您可以扩展通知渠道,例如企业微信、飞书、Slack等。

消息中心

通过阿里云消息中心发送告警内容。

告警分析

全局告警中心

告警监控规则执行记录报表

提供告警监控规则执行记录报表,便于排查错误。

告警规则中心

提供告警规则中心仪表盘,用于查看告警规则总体执行态势与触发告警状态。

告警链路中心

提供告警链路中心仪表盘,用于展示由告警监控规则产生的告警经过告警管理到告警通知的整个链路。

告警排障中心

提供告警排障中心,用于展示告警监控系统、告警管理系统、告警通知系统等各阶段的错误,便于排查。

中心化存储

中心化的告警存储,便于查看接收、处理和发送的告警和相关日志。

完成告警初始化后,日志服务将自动在您所选的地域创建一个名为sls-alert-主账号ID-区域Project和名为internal-alert-center-logLogStore,用于存储告警。

功能优势

  • 易于开始,便于复制

    日志服务提供日志和时序数据的接入、存储、查询、分析、可视化和告警的一站式服务。接入日志或时序数据后,在数分钟内即可创建监控任务、通知渠道和告警策略,支持实时接收潜在的告警事件并响应。

    您可以扩展小场景或小团队中的告警资源,应用到其他的业务场景或更大规模的团队中。

  • 高可用性与可靠性

    依托于日志服务的高可用性与数据可靠性,告警服务的可用性达到99.9%,告警相关的数据可靠性高于99.99999999%。

  • 低成本与免运维

    除短信、语音通知按条数收取较低的费用外,目前日志服务告警不收取告警监控、事务管理等其他费用。

    SaaS形态的告警产品,更全面、更智能的告警监控能力与告警事务管理能力,降低告警系统的运维成本和运维人员的时间成本。

  • 快速响应异常问题

    更全面、更智能的告警监控能力与告警事务管理能力,使告警的响应变得更迅速,提高问题解决的速度,减少因业务异常造成的损失。

应用场景

开发运维(DevOps)

开发人员通过日志服务告警功能监控产品开发生命周期的各个阶段,及时识别代码修改、发布所引起的错误或异常,并及时响应。告警功能还支持对已接入到日志服务的基础环境日志(例如K8s输出日志、事件等)和应用日志等进行监控,当发现各个环境(开发、预发或线上)的版本错误或指标异常(例如延迟、抖动等)时,及时通知给特定的开发人员。

日志审计服务、SLB日志中心等日志服务应用中内置了告警监控任务的规则模板,可简化开发人员部分监控任务的构建工作。

IT运维(ITOps)

IT运维人员需要确保整个IT基础设施的可靠性与稳定性。企业或组织将内部系统的日志或指标数据接入日志服务后,IT运维人员可通过告警功能对稳定性指标(例如响应时间、负载、错误率等)和其他潜在错误进行实时监控,及时识别异常并响应(24×7的值班)。告警功能还支持根据特定的维度对告警事件进行降噪、合并和动态分派,根据值班表和日历等智能规划当前负责人,并部分工作流程的自动化处理。例如支持故障恢复通知与状态更新、故障未及时处理自动升级告警等。

智能运维(AIOps)

开发人员和IT运维人员可结合使用日志服务的机器学习服务和告警功能,对海量的日志、时序数据进行智能监控,包括智能聚类、异常检测、异常预测等。日志服务的查询与分析功能提供了十多种机器学习算法,包括单时序数据的多种平滑操作、预测与分解操作,多时序的聚类,多字段的模式挖掘等,可以直接应用在告警监控任务中。更多信息,请参见机器学习函数。机器学习服务提供流式统计或图算法进行异常检测,可以有效识别时序数据的异常,并直接发送异常给告警系统进行告警事件的进一步管理。智能运维

安全运维(SecOps)

企业或组织将内部系统中审计和安全相关的数据、事件接入到日志服务后,安全运维人员可通过告警功能进行持续监控,识别来自于内部或外部的安全合规异常、安全威胁事件。告警系统可自动根据安全事件的等级、来源等进行通知,并支持部分工作流程的自动化处理。例如基于告警大盘进一步构建安全态势大盘。

日志服务中的日志审计服务支持跨账号自动化采集主要阿里云产品的合规与安全类的日志和事件,能自动集成威胁情报系统和告警系统,提供近百个合规与安全类的监控规则模板,帮助安全运维人员更快速的开启安全运维工作。更多信息,请参见日志审计服务

商务运维(BizOps)

企业或组织将内部系统中数据、指标接入到日志服务后,商务运营人员(包括市场、客户运营、财务人员等)可通过告警功能对各种数据或指标(例如用户数、活跃度、广告点击率、云产品账单等)进行持续监控,识别指标的变化情况或异常(例如异常费用)并响应,以提升运营效率、减少业务风险或财务风险。更多信息,请登录费用与成本查看。

基本概念

术语

说明

日志存储(LogStore)

日志服务提供LogStore用于存储日志类型的数据,并在日志存储的基础上提供查询和分析(SQL92语法)功能。告警监控任务依赖于查询与分析功能。

时序存储(MetricStore)

日志服务提供MetricStore用于存储时序数据,并在时序数据存储的基础上提供查询和分析(SQL92语法、PromQL语法)功能。告警监控任务依赖于查询与分析功能。

告警(Alert)

独立表达时,代表一个告警事件(Alert event)。例如告警监控规则触发一个或多个告警后,通过告警管理系统传递给通知管理系统。

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

告警监控(Alert monitoring)

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

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

告警管理(Alert management)

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

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

通知(行动)管理(Action management)

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

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

告警监控

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

告警监控

术语

说明

告警监控规则(Alert monitoring rule)

告警监控规则包括告警监控相关的配置,例如查询和分析语句、查询和分析的对象(日志库、时序库和资源数据)以及相关的监控编排等配置项。更多信息,请参见创建告警监控规则

资源数据(Resource data)

日志服务提供独立的、可修改的、表格形式的存储结构,用于存储告警系统所使用的各个资源配置和自定义的数据。资源数据主要用于告警监控的关联查询,例如黑白名单场景。

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

告警严重度(Alert severity)

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

分组评估

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

评估表达式

评估表达式是一个支持特定评估语法的计算表达式,用于配置告警触发条件或者动态评估告警的严重度。

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

告警标签(Alert label)

告警的标识性属性,键值对格式。例如您可以在告警监控规则中自定义标签,触发后的告警将被附加对应的标签信息。标签可在告警内容模板中被引用,也可在告警管理和行动管理中作为告警属性进行告警管理和通知渠道分派。

  • 您在监控时序库时,如果按照标签进行分组评估,日志服务会自动将时序库中的查询和分析结果的标签作为触发告警的标签。

  • 您在监控日志库时,如果选择特定一个或多个字段做分组评估,日志服务会自动将该分组字段的键值对作为告警的标签。

更多信息,请参见标签

告警标注(Alert annotation)

告警的非标识属性,键值对格式。例如您可以在告警监控规则中自定义标注,触发后的告警将被附加对应的标注信息。标注可在告警内容模板中被引用,也可在告警管理和行动管理中作为告警属性进行告警管理和通知分派。更多信息,请参见标注

恢复通知(Resolved alert)

恢复通知是特殊的告警通知,其告警状态为恢复,普通告警的状态为触发。当您开启该功能后,如果告警监控系统上次执行检查时查询和分析结果触发了告警,而本次检查时查询和分析结果不满足触发条件,则会发送一条恢复通知。在密集监控场景中,您可以开启恢复通知功能,便于及时感知异常恢复情况。更多信息,请参见设置恢复通知

告警管理

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

告警管理

术语

说明

告警策略(Alert policy)

告警策略是告警管理系统的配置实体,也是告警监控规则中的一个参数。当告警管理系统接收到告警(包括恢复通知)时,自动根据告警策略进行告警降噪与合并控制,将合并后的告警集合发送给通知(行动)管理系统进行告警通知。

告警指纹(Alert fingerprint)

告警管理系统在处理告警时,为每个告警计算一个指纹信息,拥有相同指纹的告警被认为是同一条告警。告警的指纹信息计算依赖于告警的标识性属性,包括所属阿里云账号ID、告警所在项目、告警规则ID和告警标签。更多信息,请参见基于告警指纹去重

告警静默(Alert silence)

告警策略的配置项,也是告警管理中的一个步骤。告警管理系统根据静默策略,忽略静默时间内符合条件的告警,即不发送告警通知。更多信息,请参见告警静默机制

告警合并

告警策略的配置项,也是告警管理中的一个步骤。告警管理系统接收到告警后,按照告警策略中的合并策略,对符合条件的告警进行合并分组,并归到合并集合中。合并集合在经过延迟、去重等操作后,被发送到行动(通知)管理系统中进行告警通知。更多信息,请参见多种告警分组合并

合并集合

用于存放被合并分组后的告警数据,包含一个或多个不同指纹的告警。在经过延迟、去重等操作后,合并集合被发送到通知(行动)管理系统中进行告警通知。

通知(行动)管理

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

通知管理

术语

说明

行动策略

行动策略是通知(行动)管理系统的配置实体。告警管理系统接收到告警合并集合(包括恢复通知)后,将每个告警合并集合发送给通知(行动)管理系统,根据通知(行动)管理系统中的行动策略动态分派给特定通知渠道,再通知给目标用户、用户组或值班组。

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

Webhook集成

Webhook集成用于管理Webhook通知渠道,您可以在行动策略中直接使用已创建的Webhook。目前,日志服务支持钉钉、企业微信、飞书、Slack以及自定义的通用Webhook。更多信息,请参见Webhook集成

内容模板

日志服务按照内容模板中定义的内容给您发送告警内容。内容模板针对每个主要渠道提供对应的文字模板,支持通过变量引用告警属性。对于WebHook渠道,还可额外配置消息实体的格式,以便适配特定的协议。例如企业微信的格式要求。更多信息,请参见创建内容模板

日历

通知(行动)管理系统中独立的资产配置。包括全局默认日历和自定义日历。

  • 全局默认日历定义了全局的日历信息,包括时区、节假日同步国家、每周工作日以及工作日的具体时段。

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

  • 自定义日历用于自定义工作日和节假日的时间段,是值班组独有的工作日历。

用户

代表具体接收人的配置实体,包含用户ID、用户名、电话号码和邮箱等信息。您可以通过行动策略,将目标告警通知发送给目标用户。您还可以在告警事务管理中,将事务处理人设置为目标用户。

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

用户组

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

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

值班组

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

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

轮岗

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

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

代班

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

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

使用限制

类别

限制项

说明

告警监控

最大告警监控规则数

每个Project中最多创建100个告警监控规则。

查询和分析操作一般性限制

查询和分析操作的限制项请参见查询和分析

查询和分析操作并发限制

如果在一个Project中,同时执行较多的查询和分析操作(例如通过SDK进行大量查询和分析操作),且创建了较多的告警监控规则,可能导致查询并发数超过Project限制从而使监控失败。建议在创建告警监控规则时,设置独享SQL自动,以支持更高的并发数。使用SQL独享版时,需确保目标Project具备足够的独享SQL CU数。创建告警监控规则,请参见创建告警监控规则,开启SQL独享版,请参见高性能完全精确查询与分析(SQL独享版)

查询分析语法限制

仅支持查询语句、SQL语法的分析语句及SQL+PromQL语法的语句;不支持短语查询语句及Scan模式的查询和分析语句。

说明

短语查询和Scan模式的查询分析语句(SPL语法)能成功创建告警,但在实际运行过程中可能存在失败风险或表现不符合预期。

单个查询和分析结果

  • 只使用查询语句时,默认返回100条数据。基于数据条数的触发条件判断可能不准确,此时建议使用COUNT函数进行统计。

  • 分析语句默认返回100行结果。如果您需要更多数据,可使用LIMIT语句。

    如果一条分析语句的结果超过1000条,那么系统只选取前1000条用于集合操作。

  • 当存在三个查询和分析操作且集合操作未选择不合并时,只选取每个查询和分析结果中的前100条数据。

  • 当存在两个及以上的查询分析操作且集合操作不合并时,如果开启了无数据告警,那么系统只取第一个查询分析语句的结果来判断是否无数据。

查询和分析的组合个数

1~3个。

字段值的长度

如果字段的值超过1024个字符,只截取前1024个字符用于分析。

查询和分析的时间范围

每条查询和分析语句的时间跨度不能超过24小时。

资源数据更新时效

资源数据更新非立即生效。生效时间在15分钟以内。

告警管理

告警策略变化等待

变化等待最小值为15秒,即使设置为更小的值,也是以15秒间隔进行检查。

策略匹配条件

告警策略、行动策略等配置中,建议使用项目名、告警规则ID、告警名称、严重度、简短的标签或标注等作为条件。

  • 如果匹配的是字符串,建议使用简短的普通字符串,例如foobar

    不支持匹配换行、双引号(""),例如foo "bar"无法被正常解析。

  • 正则匹配不支持Glob表达式,例如*ErrorGlob表达式,.*Error为正则表达式。

事务数量

30天内最多保留1000条事务,超过后自动覆盖旧的事务数据。

事务注释

每个事务最多添加10条注释,超出后自动覆盖。

策略配置更新时效

告警相关的策略配置,例如告警策略、行动策略、内容模板、用户、用户组、值班组等,更新后一般1分钟左右生效。

通知管理

通知渠道

各个通知渠道的使用限制如下所示。超出限制,可能导致您无法接收到告警通知。未收到告警通知时,您可在全局告警排障中心查看相关错误。更多信息,请参见全局告警排障中心

  • 语音

    仅支持中国内地手机号码(+86)。

    说明
    • 告警语音未拨通时,不会重复拨打,将以短信方式发送一次告警通知。

    • 无论告警语音是否拨通均按一次计费。未拨通的提示短信,不会额外产生短信费用。

  • 钉钉

    钉钉机器人限制每分钟最多20条消息。

  • 企业微信

    企业微信机器人限制每分钟最多20条消息。

  • 飞书

    • 飞书机器人限制每分钟最多20条消息。

    • 提醒方式仅支持设置为不提醒或者所有人,不支持设置为指定成员

  • 自定义Webhook

    • 必须为公网可访问的地址。

    • Webhook调用返回的状态码为200时,表示调用成功,其余状态码都表示调用失败。

  • 函数计算

    仅支持以sls-ops-开头的函数。

更多信息,请参见通知渠道说明

通知内容

每个通知渠道都存在通知内容长度的限制。为了尽量保证告警通知成功,对于超长的内容,系统可能通过适当的内容截断来避免通知失败。内容截断无法保证内容的完整性以及百分百发送成功,这主要是受限于截断后的内容以及各个通知渠道的支持能力,例如截断后的内容是不合法的Markdown或者HTML,则可能导致通知失败。对于短信、语音等纯文本格式的内容,一般内容截断不会导致通知失败。

建议根据通知渠道的限制合理配置内容模板,避免内容超长导致通知失败。各个通知渠道的限制如下(中文、英文、数字或标点符号都算一个字符):

说明

如果字段的值超过1024个字符,只截取前1024个字符。

  • 短信

    通知内容限制为256个字符。

  • 语音

    通知内容限制为256个字符。

  • 邮件

    通知内容限制为8 KB。

  • 钉钉

    通知内容限制为8 KB。

  • 企业微信

    • 通知内容限制为4 KB。

    • 提醒方式所有人指定成员时,通知内容只能为普通文本格式,不支持Markdown格式。

  • 飞书

    通知内容限制为8 KB。

  • Slack

    通知内容限制为8 KB。

  • 自定义Webhook

    通知内容限制为16 KB。

  • 通知中心

    通知内容限制为8 KB。

  • 函数计算

    通知内容限制为16 KB。

  • EventBridge

    通知内容限制为16 KB。

内容模板配置

内容模板配置错误时,可能导致模板渲染失败,从而返回报错信息。如果您所接收的告警通知中包含Template render error类似的报错信息,请根据内容模板语法(新版)及报错信息检查模板配置是否正确。

内容模板变量

内容长度最多2 KB,超过2 KB部分会被截断。

费用说明

告警会产生短信通知和语音通知费用。详细价格,请参见产品定价

操作

说明

短信通知

告警短信通知费用,按通知次数收费。

说明

某些运营商可能将内容过长(例如超过70字符)的短信拆分成2条发送,所以当您编辑的短信内容过长时,您可能收到2条短信,但日志服务只按照1条短信收费。

语音通知

告警语音通知费用,按通知次数收费。

说明
  • 告警语音未拨通时,不会重复拨打,将以短信方式发送一次通知。

  • 无论告警语音是否拨通均按一次计费。未拨通的提示短信,不会额外产生短信费用。