在哪里使用过滤条件?
过滤条件应用于以下场景:
| 场景 | 说明 |
|---|---|
| 分派策略 | 同一个协作空间允许创建多个分派策略,每个分派策略可以设置不同的过滤条件,针对不同的故障设定不同的分派对象 |
| 静默规则 | 设置过滤条件来匹配特定的故障,满足条件的故障将会被静默 |
| 抑制规则 | 设置过滤条件,分别匹配新触发的故障和已有的活跃故障,当新故障满足条件,将被抑制 |
| 告警聚合 | 设置过滤条件匹配特定的告警,并针对这部分告警设置新的聚合维度 |
| 路由规则 | 使用集成中心的告警集成时,设置全局路由匹配规则,将不同的告警路由到特定协作空间 |
| 标签增强 | 设置过滤条件来匹配特定的告警,满足条件的告警按照规则进行标签的生成 |
| 告警处理 | 设置过滤条件来匹配特定的告警,满足条件的告警将按照规则进行处理 |
如何配置过滤条件?
规则设计
Flashduty On-call 将整个过滤条件做了抽象,期望做到最小化配置且满足大部分场景需求。 整体判断逻辑分为多组条件:- 组内条件:
AND关系,即每一个条件均匹配,整个组才为匹配 - 组与组之间:
OR关系,即任一组条件匹配,整体即为匹配
- 匹配:目标可以有多个 value,任一 value 满足条件,则该条件匹配
- 不匹配:目标可以有多个 value,所有 value 均不满足条件,则该条件匹配
如上图所示,我们有两组条件,每组条件内有两个条件,条件匹配值有多个。表达式如下:
匹配方式
- 正则匹配
- 通配匹配
- IP 段匹配
- 数值匹配
- 精确匹配
当 value 字符串以
/ 为前后缀,整个 value 将被识别为正则。示例:labels.check:/宕机/— check 标签包含”宕机”时,即匹配
Flashduty 全平台使用
RE2 正则规范,部分 Perl 语法可能无法匹配。您可使用 AI Chatbot 生成表达式,并前往 RE2 Playground 进行验证。常见问题
为什么系统不提示我可选标签?
为什么系统不提示我可选标签?
Flashduty On-call 接受大量数据上报,为了保证系统的稳定性,系统仅查找过去 24 小时内,最多 500 条告警事件进行标签的去重操作。因此提取到的标签范围可能会动态变化,甚至在过去 24 小时没有新数据时提取不到任何标签。这种情况下,您可以手动输入标签。
我的正则已经在线下通过校验,为什么在系统中无法匹配?
我的正则已经在线下通过校验,为什么在系统中无法匹配?
Flashduty 全平台使用
RE2 正则规范,部分 Perl 语法可能无法匹配。您可使用 AI Chatbot 生成表达式,并前往 RE2 Playground 进行验证。