通知规则
按标签和级别匹配事件,再决定走哪个媒介、用哪份模板、发给谁。
这页办完你会得到:一条能用的通知规则——S1 走一个媒介、S3 走另一个, 挂到告警规则上之后事件真的能送出去,并且你在保存之前就已经收到过一条测试消息。
1. 新建一条通知规则
告警通知 → 通知规则,右上角 新增。

表单分三块:通知配置(核心)、基础配置、事件处理工作流(可选)。 先跳过基础配置——名称会在你选完媒介和接收团队之后自动生成。
2. 填第一条通知配置
| 字段 | 说明 |
|---|---|
| 通知媒介 | 从已有媒介里选。没有合适的就先去通知媒介建一个 |
| 消息模板 | 选完媒介才出现,只列出媒介类型相同的模板;默认自动选中第一个。FlashDuty、PagerDuty 和「回调」类媒介不显示这一项,它们不走模板 |
| 媒介参数 | 随媒介变化:钉钉是 Access Token + Bot Name,企业微信是 Key,回调是 Callback Url |
| 接收人 / 接收团队 | 只有媒介配了「联系方式」才出现(邮件、短信、电话这类)。两者不能同时为空 |
群机器人类的媒介(钉钉、企业微信、飞书卡片)没有接收人——消息发到群里, 谁在群里谁收得到;要指定接收人得靠模板里的 @。
预期结果:填完媒介和接收团队,上方的名称会自动变成「媒介名-团队名」,可以改。
3. 收紧筛选条件
通知配置里有一块折叠的筛选条件,四项都是「与」的关系:
| 筛选项 | 留空的含义 |
|---|---|
| 适用级别 | 不是不限制,是一条都不匹配。三个都不勾等于停用这条通知配置 |
| 适用时段 | 不限制。可以加多组「星期 + 起止时间」,跨零点(如 21:00–09:00)也支持 |
| 适用标签 | 不限制。按事件标签筛,比如 env=prod |
| 适用属性 | 不限制。按事件属性筛:业务组、数据源、告警规则、告警等级、是否恢复、机器业务组 |
标签和属性的区别:标签是告警数据自带的维度(instance、job、你自己打的),
属性是夜莺给事件加的元信息。
4. 保存前先测一下
每条通知配置右上角有 通知测试。两种模式:
- 使用模拟事件:发一条内置的假事件,不校验筛选条件,纯粹验证「地址通不通、密钥对不对」。新环境用这个。
- 选择历史事件:挑几条真实发生过的事件,会按筛选条件校验一遍,不匹配就直接报错——顺便验证了你的筛选写得对不对。
预期结果:弹窗里显示目标返回的响应,同时你的群/邮箱里真的多出一条消息。 两者缺一都算没通过,详见端到端测试一条通知。
5. 挂到告警规则上
通知规则自己不会跑。回到 告警通知 → 规则管理,编辑一条告警规则, 在 通知规则 字段里选中它,保存。
一条告警规则可以挂多条通知规则;一条通知规则也可以被很多告警规则挂。 改通知规则只对之后产生的事件生效,不会重发历史事件。
想知道一条通知规则现在被谁用着、发出去过什么,在通知规则列表里点它的名字进详情页, 三个 tab 分别是:事件列表(这条规则通知过的事件)、告警规则(哪些告警规则挂了它)、 订阅规则(哪些订阅用了它)。
授权团队决定谁能看到这条规则
基础配置里的授权团队不是接收人,是权限:只有这些团队里的用户能在列表里 看到、编辑这条规则。管理员能看到全部。
接收人是在通知配置里单独选的,两者不是一回事。
事件处理工作流(可选)
通知规则上可以挂一条或多条事件 Pipeline,在发送之前对事件 做加工——补标签、改字段,或者直接丢弃。它跑在筛选条件之前,所以工作流写出来的标签, 「适用标签」是能匹配到的。
注意告警规则上也能挂工作流,那一份影响所有下游;这里这一份只影响这条通知规则。
几条经验
- 按「谁值班 + 多急」拆规则,不要按数据源拆。 例如
pay-prod-critical(S1,电话 + 钉钉)、pay-prod-warning(S2,钉钉)、default-all(兜底)。 - 兜底规则要真的存在。 新建告警规则时忘了选通知规则,事件就只在事件列表里躺着。
- 不要为每个群建一个媒介。 媒介只描述「怎么发」,群的 token 填在通知规则里。
- 个人免打扰做不到。 筛选全在规则层,用户没法自己屏蔽某类通知;真有需求就多建一条规则。