У меня есть будильники, которые сообщают мне, когда мои балансировщики нагрузки выдают 5xx с использованием метрики HTTPCode_Backend_5XX
со статистикой sum
. Проблема в том, что sum
регистрирует 0 как отсутствие точек данных, поэтому, когда не выбрасывается 5xx, сигнал тревоги обрабатывается как недостаточные данные. Это особенно расстраивает, потому что у меня есть настройка SNS, чтобы уведомлять меня, когда мы получаем слишком много 5xx (состояние тревоги) и когда все возвращается в норму. К сожалению, 0 5xxs означает, что мы находимся в состоянии INSUFFICIENT DATA
, но 1 5xx означает, что мы находимся в состоянии OK
, поэтому 1 5xx вызывает уведомление всех о том, что все в порядке. Есть ли способ обойти это? В идеале я бы хотел, чтобы 0 чего-либо отображалось как нулевой пункт данных, а не вообще никаких данных (недостаточно данных).
Избегайте НЕДОСТАТОЧНЫХ ДАННЫХ в Cloudwatch?
Ответы (3)
Начиная с Март 2017 г., недостающие данные можно считать приемлемыми. Это предотвратит пометку сигнала тревоги как НЕДОСТАТОЧНЫЙ.
Вы также можете установить это в CloudFormation с помощью TreatMissingData.
У нас была аналогичная проблема с некоторыми из наших будильников. Вы действительно можете избежать этого поведения с помощью некоторой работы, если действительно хотите справиться с накладными расходами.
Что мы сделали, так это то, что вместо отправки уведомлений SNS непосредственно на электронную почту мы создали лямбда-функцию и запустили ее, как только мы получили уведомление в теме SNS.
Таким образом, у вас будет больше контроля над действиями, которые вы можете предпринять после срабатывания сигналов тревоги. Поскольку контекст также предоставит вам старое значение состояния.
Хорошая новость в том, что для начала уже есть лямбда-шаблон. https://aws.amazon.com/blogs/aws/new-slack-integration-blueprints-for-aws-lambda/
Просто выберите тот, который предназначен для отправки аварийных сигналов облачного режима в резерв. Затем вы можете изменить код по своему усмотрению: либо отклонить часть резервной копии и просто использовать электронную почту, либо оставить ее с резервом. (что мы и сделали, и это работает как шарм)
Я спросил об этом на форумах AWS два года назад :-( https://forums.aws.amazon.com/thread.jspa?threadID=153753&tstart=0
К сожалению, вы не можете создавать уведомления на основе определенных изменений состояния (в вашем случае вам нужно уведомление, когда состояние изменяется с ALARM на OK, но не когда состояние изменяется с INSUFFICIENT на OK). Я могу только предложить, чтобы вы также попросили об этом, и, надеюсь, он в конечном итоге будет добавлен.
Для показателей, которые часто находятся в состоянии НЕДОСТАТОЧНО, я обычно просто создаю уведомления для СИГНАЛОВ, и у меня нет уведомлений об ОК для этих показателей - если я хочу подтвердить, что все в порядке, я использую мобильное приложение AWS, чтобы проверить все и посмотреть если они разрешились.