屏蔽规则

夜莺 v9 屏蔽规则:在特定标签/数据源/时间窗口内压制告警通知,处理计划性维护、已知问题、非关键时段噪音。

概述

屏蔽规则 在指定标签 / 数据源 / 时间窗口内压制告警通知。被命中的事件不会推送、不会出现在活跃告警列表,但告警引擎仍在评估(不影响告警状态判定本身)。

侧栏路径:告警 → 规则管理 → 屏蔽规则 Tab,URL /alert-mutes

适用场景:

  • 计划性维护:升级/重启窗口期间,相关告警暂时不吵;
  • 已知问题在处理:故障复盘中、暂未根治,不再重复通知;
  • 非关键时段的低优先告警:夜间/节假日暂时静默非核心告警;
  • 测试环境噪声:开发/测试环境的高频告警长期屏蔽,只通过仪表盘看。

和**全局屏蔽(PLUS 独有)的关键区别:屏蔽规则绑业务组**、只对本业务组生效;全局屏蔽跨所有业务组生效,是 Admin 用的"大开关"。

工作机制:层层过滤的漏斗

屏蔽规则像一个漏斗,事件必须全部满足所有筛选条件才被压制。逻辑关系是 业务组 AND 数据源类型 AND 数据源 AND 事件等级 AND 所有标签条件 AND 时间窗口缺一不可

如果一条事件只命中其中部分条件,规则不生效

表单字段

区块 字段 必填 说明
基本信息 屏蔽原因 否(建议) 写清楚"为什么屏蔽 + 负责人 + 预期恢复时间";列表里的标题就是它
筛选条件 业务组 自动绑当前业务组,不可改
数据源类型 不填 = 不限类型(Prometheus / Elasticsearch / MySQL…)
数据源 不填 = 该类型下的所有实例
事件级别 不填 = 不限级别(S1 / S2 / S3)
事件标签 至少 1 条 标签匹配条件,可以加多行 — 详见下方"匹配操作符"
屏蔽时长 屏蔽时间类型 固定时间 / 周期时间
起止时间 看类型 固定:选起止时间窗口;周期:选星期几 + HH:MM 区间

匹配操作符(6 种)

事件标签条件支持 6 种操作符,全部针对标签的 value

操作符 含义 示例
== 等值匹配 rulename == 测试服务器挂载多个业务组告警
=~ 正则匹配 ident =~ flashcat|v63-192.168.0.2
!= 等值不匹配(取反) ident != pushgw-flashcat02-192.168.0.2
!~ 正则不匹配(取反) ident !~ flashcat(不含 flashcat 关键词的全屏蔽)
in 属于一个列表 ident in (flashcat01-192.168.0.2, pushgw-flashcat02-192.168.0.2)
not in 不属于一个列表 ident not in (...)

多条事件标签条件之间是 AND(且)关系 — 一条事件需要同时满足所有标签条件才被屏蔽。

想用 OR 关系?把不同条件拆成多条屏蔽规则即可(任一规则命中就屏蔽)。

屏蔽时长:固定 vs 周期

固定时间

  • 屏蔽时长:1h / 6h / 24h / 7d 等快捷选项;
  • 屏蔽开始 / 结束时间:选时长后自动算出,也可手工改成任意区间;
  • 默认时长快捷选项是 1h;想精确到分秒,手工编辑起止时间字段。

周期时间

每周固定时段都屏蔽,长期生效。常用于"夜间维护窗口长期静默"、“工作日午休时段不吵"等。

  • 周几(多选周一到周日);
  • 起止时间(当天 HH:MM);
  • 可加多个时段。

重要:被屏蔽事件的 TriggerTime 必须落在屏蔽时间范围内。如果事件触发于窗口前但持续到窗口内,不会被屏蔽 — 屏蔽看的是触发时刻。

实操:临时屏蔽某条已知告警

经典用法 — 从活跃告警里带标签预填新建屏蔽:

  1. 活跃告警 → 点击该事件标题打开详情抽屉;
  2. 详情抽屉底部点「屏 蔽」按钮 → 自动跳转到 /alert-mutes/add,事件的标签已预填到表单的事件标签条件里;
  3. 调整屏蔽时长(默认 1h),填屏蔽原因;
  4. 保存即可。

这条事件以及未来匹配相同标签的事件都会被压制。

常见问题

Q1:屏蔽规则保存后,对应的告警事件还在活跃告警列表,正常吗?

A:屏蔽规则只对新触发的告警生效。已经存在的活跃告警不会被立即移除,需要等它自然恢复后才消失。如果想立刻让它消失,详情抽屉里手工删除该事件(注意:仅在确定指标不会再上报的情况下做,否则规则会再产生新事件)。

Q2:屏蔽规则和订阅规则、全局屏蔽之间什么关系?

A:

  • 全局屏蔽(PLUS):跨所有业务组的屏蔽,最先评估,命中就过滤掉;
  • 业务组屏蔽规则(本页):只对本业务组生效;
  • 订阅规则文档):相反 — 把别人业务组的事件订阅过来;

三者关系是:先全局屏蔽过滤、再本地屏蔽过滤、最后剩下的发通知 / 订阅给其他业务组。任一屏蔽命中事件就被压制,不会重复屏蔽。

Q3:周期屏蔽跨天(如每天 22:00 到次日 06:00)怎么写?

A:拆成两段:周一到周日 22:00-23:59 + 周一到周日 00:00-06:00。当前 UI 不支持单段跨日。

Q4:屏蔽规则生效后,被屏蔽事件还会被告警引擎评估吗?会不会导致引擎压力增加?

A:会评估 — 屏蔽规则只过滤通知事件入库,引擎照常 每个评估周期跑 PromQL。屏蔽对引擎本身几乎零负担,区别只在事件后端处理那一步。

Q5:怎么批量配屏蔽规则?比如运维周末把所有核心业务都屏蔽?

A:UI 没有批量入口,两种方式:

  • API 写脚本批量创建;
  • PLUS 用户全局屏蔽 — 一条规则覆盖所有业务组,比 N 条业务组屏蔽轻量得多。

参考资料

更新时间 2026-05-20

快猫星云 联系方式 快猫星云 联系方式
快猫星云 联系方式
快猫星云 联系方式
快猫星云 联系方式
快猫星云