Я пытаюсь настроить Alertmanager для отправки на 2 разных получателя, основываясь на значении метки в правиле Prometheus. Например, если метка ответственного_стали равна вебу, отправьте получателю веб-команды. Если метка reponsible_team равна базе данных, отправьте получателю группы базы данных.
Я следовал документации Alertmanager, и они говорят, что вы должны установить несколько маршрутов с соответствием, а затем labelName и labelValue под ним.
route:
group_by: ['alertname','entity']
group_wait: 30s
group_interval: 5m
repeat_interval: 15m
receiver: default
routes:
- match:
responsible_team: 'TestTeam'
receiver: test_email
Ожидаемым результатом будет то, что любые оповещения о срабатывании в Alertmanager, имеющие метку liability_team в качестве TestTeam, будут отправлять электронную почту на адрес электронной почты, указанный в моем приемнике test_email. Однако, когда я применяю эти изменения и перезапускаю службу, я получаю следующую ошибку:
level = error ts = 2019-07-11T22: 00: 29.0405339Z caller = main.go: 325 msg = "Ошибка загрузки файла конфигурации" file = "C: \ Program Files \ AlertManager \ alertmanager.yml" err = "yaml: неустранимые ошибки: \ n строка 21: маршруты полей не найдены в типе config.plain"
Я пытался обновить версию до последней, и это, похоже, не решает проблему.