Alertmanager 可以通过设置标签和路由来满足这个需求。
首先,在 Prometheus 配置文件中设置要发送的警报标签:
groups:
- name: example
rules:
- alert: MondayOnly
expr: vector(1)
labels:
severity: warning
workday: Monday
annotations:
summary: "Alert Example for Monday"
然后,在 Alertmanager 的配置文件中,可以定义路由规则,只发送工作日的警报:
route:
receiver: 'default-receiver'
group_by: ['workday']
group_wait: 30s
group_interval: 5m
repeat_interval: 12h
receivers:
- name: 'default-receiver'
email_configs:
- to: 'email@example.com'
send_resolved: true
headers:
Subject: "Alertmanager Email"
webhook_configs:
- url: 'http://localhost:5001/alerts'
这将只在工作日发送警报,并在周末暂停警报发送。
请注意,此示例假定“工作日”是从星期一到星期五。如果您需要不同的工作日定义,需要调整 Prometheus 配置文件中的标签。