У меня настроена проверка работоспособности Route 53, которая используется для перевода веб-сайта в «режим обслуживания» и выхода из него в случае сбоя проверки. Все работает очень красиво и автоматизировано.
Проверки работоспособности Route 53 имеют возможность настраивать сигналы тревоги и отправлять уведомления в тему SNS. Также очень мило. ОДНАКО, я не могу контролировать фактическое отправленное сообщение, и, честно говоря, оно довольно уродливое / техническое.
Я хотел бы иметь возможность «преобразовать» сообщение, как мы можем сделать с CloudWatch Events, чтобы сделать его более полезным для целевой аудитории уровней C и менеджеров. Итак, это будет означать, что мне нужно создать событие CloudWatch (я предполагаю). И в этом моя борьба.
Единственный вариант для Route 53 и CloudWatch Events - «Вызов API AWS через CloudTrail», и здесь я теряю след. Не уверен, возможно ли это. Кто-нибудь это сделал?
Или идеи получше? Я предполагаю, что кто-то скажет: «Ой, просто напишите лямбда» и запустит его из соцсети для отправки электронных писем. Я не писал код 15 лет ... Не уверен, что это лучший вариант ;-) Я могу написать немного PowerShell, если это поможет.
Хорошо, это было не так сложно, как я думал. Просто пришлось немного «подумать за углом».
Сначала я отключил функцию отправки уведомлений в сигнале проверки работоспособности Route 53. В событиях CloudWatch я создал правило для отслеживания состояния тревоги средства проверки работоспособности - и оттуда я мог выполнять преобразование ввода для сообщения, отправляемого в социальную сеть (и, в конечном итоге, в группу рассылки электронной почты).
{
"source": [
"aws.cloudwatch"
],
"detail-type": [
"CloudWatch Alarm State Change"
],
"detail": {
"alarmName": [
"THE-ALARM-NAME-FOR-THE-ROUTE53-HEALTHCHECK"
]
}
}