prometheus-alertmanager - Alertmanager 仅通过默认接收器
问题描述
如标题所述,我对 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"
使用此配置,它会将所有内容都放在默认路由中,而 netheir 会进入路由,我什至没有收到错误消息。有人对如何使这项工作有想法吗?
解决方案
尝试使用支持否定匹配的“matchers”而不是“match”:而不是
# ❌ This is invalid
route:
- match:
alertname: !WatchDog
# ✅ This is correct
route:
- matchers:
- alertname!=Watchdog
文档:https ://prometheus.io/docs/alerting/latest/configuration/#matcher
推荐阅读
- angular - 使用角度在剑道树视图中附加自定义节点
- java - 使用 ExoPlayer 2.8 播放播放列表中的特定文件
- react-native - redux-observable 您在预期流的地方提供了“未定义”
- android-things - 如何在 Android Things 控制台上注册和识别单个设备或我们如何让设备进入通道
- xamarin - Xamarin.iOS:如何更改工具栏中图像的大小
- java - 使用 Scanner 扫描另一个类中的预定义字符串列表,并将它们解析为 java 中的 Ints
- javascript - navigationOptions 没有在标题上显示我的按钮
- html - 如何避免内嵌图标跳转到移动设备的下一行?
- python - 嵌套循环跟踪
- php - 从数据库中查找的最小日期