Alertmanager 仅通过默认接收器

Alertmanager only goes though default receiver

如标题所述,我对来自 prometheus-operator 的 alertmanager 有疑问。我正在尝试使用路线过滤一些警报,但似乎没有考虑在内。

当我使用默认接收器时,一切似乎都工作正常,但如果我尝试使用不执行任何操作的默认接收器进行过滤,然后是路由,它不会进入路由,我也没有得到任何错误。

我使用的秘密:

route:
  group_wait: 30s
  group_interval: 5m
  repeat_interval: 4h
  group_by: [cluster]
  receiver: 'default'
  routes:
  - match:
      alertname: !Watchdog
    receiver: 'slack-devops'
    continue: true
templates: ['/etc/alertmanager/config/*.tmpl']
receivers:
- name: 'default'
- name: 'slack-devops'
  slack_configs:
  - channel: "tmp-test-srv-alerting"

使用此配置,它会将所有内容都放在默认路由中,而它们都不会进入路由,我什至没有收到错误。有人知道如何进行这项工作吗?

尝试使用 'matchers' 而不是支持负匹配的 'match' : 而不是

# ❌ This is invalid
route:
- match:
   alertname: !WatchDog

# ✅ This is correct
route:
- matchers:
   - alertname!=Watchdog

文档:https://prometheus.io/docs/alerting/latest/configuration/#matcher