新版本告警在升级原有功能的基础上,扩展了告警监控、告警管理、通知(行动)管理的能力。本文介绍新版与旧版在架构、功能和配置上的区别。

架构升级

新版告警在告警规则任务监控数据、触发通知后,通过告警策略进行降噪、通过行动策略进行渠道分派管理。并支持额外的告警事务管理和告警升级。

  • 旧版告警工作流程旧版架构
  • 新版告警工作流程新版告警架构

功能升级

功能升级体现在原有告警功能的增强和新增功能。

  • 现有功能的升级
    功能点 旧版 新版
    日志监控 结果存在就触发告警。 提供结果存在就触发告警的选项。
    固定任意条件满足就触发告警。 增加结果中满足特定条数时才触发告警的功能。
    时序监控 结果存在就触发告警,查询和分析语法编写略繁琐,固定任意条件满足就触发告警。 直接提供存在即触发告警的选项,增加结果中特定条数满足时才触发告警的功能。
    结果存在就触发告警。 提供结果存在就触发告警的选项。
    固定任意条件满足就触发告警。 增加结果中满足特定条数时才触发告警的功能。
    不支持组合查询。 增加支持组合查询。
    报表关联 强制关联至少一个报表。 不再强制要求关联报表。
    多库关联监控 组合查询时,仅支持笛卡尔积、不合并两种操作。 组合查询时,支持各种集合操作(笛卡尔积、不合并、拼接、左联、右联、全联合、左斥和右斥等)。
    同一告警去重 时间窗口内,忽略来自同一告警规则的告警。 增加基于标签定义的告警去重和延迟发送功能。
  • 新版新增功能

    在告警监控、告警管理、通知管理以及告警分析方面增加以下新功能:

    类别 功能点 功能描述
    告警监控 关联日志与时序监控 支撑SQL Join语法、查询和统计的中间结果集合操作扩展。
    黑白名单监控 使用资源数据关联白名单或黑名单对象。
    数据协同关联监控能力 支持跨Project、跨区域、跨账号协同的集合操作。更多信息,请参见多集合操作机制
    告警严重度 支持设置告警静态、动态、无数据时的告警严重度。更多信息,请参见设置告警严重度
    标签、标注 支持自定义标签、标注,其中标注值可使用变量。更多信息,请参见标签和标注
    多目标监控 支持对一条告警规则中查询和分析结果进行分组评估,不同分组分开发送告警通知。更多信息,请参见分组评估
    无数据告警 无数据时发送告警通知,支持自动展示与渠道通知。更多信息,请参见无数据告警
    告警恢复 告警恢复时发送告警通知,支持自动展示与渠道通知。更多信息,请参见恢复通知
    告警管理 告警降噪控制 全局的控制范围、告警静默、告警之间抑制和压制、多种告警归类合并等。更多信息,请参见告警管理概述
    告警事务(Incident)管理 支持设置告警事务流程阶段(包括确认、解决、忽略等),也可设置告警处理人和自动分派处理人。更多信息,请参见告警事务管理
    通知管理 告警动态分派与告警通知升级
    • 支持根据告警属性动态分派给特定渠道下的指定用户、用户组或值班组。更多信息,请参见渠道分派与发送机制
    • 支持告警通知升级,当告警未及时确认、解决时,升级通知渠道和接收人。更多信息,请参见告警通知升级机制
    接收人管理 支持独立的用户管理、用户组管理以及值班组管理。更多信息,请参见创建用户和用户组创建值班组
    支持渠道日历 支持感知当前是否为节假日、是否工作日、区域国家(中国、美国节日)等,并做动态调整。更多信息,请参见日历重置机制
    值班表管理 支持丰富的轮岗排班方案、支持代班。单个值班组可以有独立的日历,支持节假日自定义和感知。更多信息,请参见轮岗与代班场景
    渠道额度控制 支持短信、语音、邮件的额度控制,并支持特定用户、组的自定义控制。更多信息,请参见通知渠道额度控制机制
    告警分析 监控规则中心、告警链路中心、告警排障中心 支持告警监控规则总体执行态势、触发告警状态、告警各个环节链路、以及告警系统中各阶段的错误展示。支持按照区域、项目和严重度等过滤查看告警态势。
    全局存储 全局化的告警存储,便于查看接收、处理和发送的告警和相关日志。

配置项变化

配置项变化主要体现在监控告警、通知配置和内容模板变量的变化。

  • 监控告警
    从旧版迁移到新版告警后,新增如下配置项,其余配置项与旧版保持一致。
    新增配置项 默认值
    分组评估 不分组
    查询统计的集合操作 笛卡尔拼接
    触发条件 任意条数满足
    告警严重度
    无数据告警 关闭
    恢复通知 关闭
  • 通知配置
    升级后,日志服务提取手机号、邮箱作为用户标识,并创建对应的用户,提取通知内容作为内容模板的内容。根据通知渠道配置生成对应的行动策略,默认使用SLS内置动态告警策略(sls.builtin.dynamic)。
    说明
    • 通知渠道中相同手机号、相同邮箱地址会自动匹配已升级完成的用户,并使用该用户发送告警通知。
    • 通知渠道中相同的通知内容会自动匹配已升级完成的内容模板,并在发送告警通知时使用升级完成的内容模板。
    • 相同通知渠道自动匹配已升级完成的行动策略,并在发送告警通知时使用该行动策略。
    通知方式 新版 旧版
    短信 用户名+手机+内容模板 短信手机号码+发送内容
    语音 用户名+手机号+内容模板 语音手机号码+发送内容
    邮箱 用户名+邮箱地址+内容模板 邮箱地址+发送内容
    钉钉 用户名+手机号+内容模板 请求地址+钉钉中@手机号+发送内容
  • 内容模板变量
    为了与告警策略中应用的告警变量一致,新版的通知内容变量有所调整,并增加多个新的变量。其中新版与旧版在名称上变化的部分,对应关系如下。
    旧版变量 新版变量 说明
    Aliuid aliuid Project所属的阿里云账号ID
    Project project 告警规则所属Project
    AlertID alert_instance_id 告警执行ID
    AlertDisplayName alert_name 告警规则显示名称
    Condition condition 触发告警的条件表达式。其中,以触发告警的值替换设置的变量,并使用中括号([])包裹。
    RawCondition raw_condition 原始的条件表达式,即condition中不替换变量的原始表达式。
    Dashboard dashboard 告警关联的仪表盘名称
    DashboardUrl dashboard_url 告警关联的仪表盘地址
    FireTime fire_time 触发时间
    FullResultUrl query_url 告警触发历史记录的查询地址URL
    Results results 查询参数和结果,数组类型。字段解释请参见附录:Results结构
    说明 最多发送100条告警信息。
    更多信息,请参见旧版内容模板变量新版内容模板变量

附录:Results结构

旧版字段 新版字段 说明
Query query 查询语句
LogStore store 查询的目标Logstore
StartTime start_time 查询开始时间
StartTimeTs start_time_ts 查询开始时间,Unix时间戳
EndTime end_time 查询结束时间
EndTimeTs end_time_ts 查询结束时间,Unix时间戳
RawResults raw_results 查询原始结果,数组类型,每个元素为一条日志。数组长度和日志内容大小有关,最多包含100条。
RawResultsAsKv raw_results_as_kv 按照key-value格式化的原始查询结果。
说明 该字段只可以作为模版变量引用,不会保存到Logstore。
RawResultCount raw_result_count 原始结果条数。
FireResult fire_result 触发告警的日志。如果告警未触发则为null。
FireResultAsKv fire_result_as_kv 按照key-value格式化的触发告警的日志。
说明 该字段只可以作为模版变量引用,不会保存到Logstore。