Я пытаюсь реализовать то, что предложил Брайан Бразилия:
https://www.robustperception.io/using-labels-to-direct-email-notifications/
Что я делаю, так это вставляю аннотацию пространства имен OpenShift в мои метрики, а затем извлекаю эту метку с помощью конфигурации Alertmanager. Но, похоже, он не работает и жалуется на то, что поле "to" пустое.
time="2018-06-26T13:28:48Z" level=debug msg="Notify attempt 1 for "email" failed: parsing to addresses: mail: no address" source="notify.go:585"
time="2018-06-26T13:28:48Z" level=error msg="Error on notify: Cancelling notify retry for "email" due to unrecoverable error: parsing to addresses: mail: no address" source="notify.go:283"
time="2018-06-26T13:28:48Z" level=error msg="Notify for 6 alerts failed: Cancelling notify retry for "email" due to unrecoverable error: parsing to addresses: mail: no address" source="dispatch.go:262"
Вот некоторые конфигурации, которые я пробовал:
# default route if none match
group_by: [annotation_contact_email]
receiver: projectalerts
group_by: []
group_wait: 0s
group_interval: 2s
repeat_interval: 2s
receivers:
- name: alert-buffer-wh
webhook_configs:
- url: http://localhost:9099/topics/alerts
- name: projectalerts
email_configs:
- to: '{{.GroupLabels.annotation_contact_email}}'
, а также
- name: projectalerts
email_configs:
- to: '{{.Labels.annotation_contact_email}}'
Отлично работает со статически определенным письмом.