新版本告警在升级原有功能的基础上,扩展了告警监控、告警管理、通知(行动)管理的能力。本文介绍新版与旧版在架构、功能和配置上的区别。
架构升级
新版告警在告警规则任务监控数据、触发通知后,通过告警策略进行降噪、通过行动策略进行渠道分派管理。并支持额外的告警事务管理和告警升级。
- 旧版告警工作流程
- 新版告警工作流程
功能升级
功能升级体现在原有告警功能的增强和新增功能。
- 现有功能的升级
功能点 旧版 新版 日志监控 结果存在就触发告警。 提供结果存在就触发告警的选项。 固定任意条件满足就触发告警。 增加结果中满足特定条数时才触发告警的功能。 时序监控 结果存在就触发告警,查询和分析语法编写略繁琐,固定任意条件满足就触发告警。 直接提供存在即触发告警的选项,增加结果中特定条数满足时才触发告警的功能。 结果存在就触发告警。 提供结果存在就触发告警的选项。 固定任意条件满足就触发告警。 增加结果中满足特定条数时才触发告警的功能。 不支持组合查询。 增加支持组合查询。 报表关联 强制关联至少一个报表。 不再强制要求关联报表。 多库关联监控 组合查询时,仅支持笛卡尔积、不合并两种操作。 组合查询时,支持各种集合操作(笛卡尔积、不合并、拼接、左联、右联、全联合、左斥和右斥等)。 同一告警去重 时间窗口内,忽略来自同一告警规则的告警。 增加基于标签定义的告警去重和延迟发送功能。 - 新版新增功能
在告警监控、告警管理、通知管理以及告警分析方面增加以下新功能:
类别 功能点 功能描述 告警监控 关联日志与时序监控 支撑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。
|