Мониторинг Google Cloud: добавьте предупреждение, если публикация прошла успешно, а подписка не удалась
Я хочу добавить оповещение в Google Cloud Monitoring, чтобы для заданной темы и подписки я хотел знать, публикуется ли тема, а подписки не подтверждаются с той же или аналогичной скоростью в течение определенного периода времени.
Как этого добиться, используя оповещения в Google Cloud Monitoring или StackDriver?
Я попробовал подход, где у меня есть 2 условия, чтобы удовлетворить:
- Если операции публикации> 0,016/ сек в течение 2 минут (то есть, по крайней мере, одна публикация в минуту)
- Если подтверждений подписки < 0,001/ сек в течение 2 минут (если подтверждений подписки не происходит в течение 2 минут)
Тогда настороже.
Здесь происходит то, что при низкой нагрузке, если не происходит никаких публикаций, скажем, в течение промежутка времени в 3 минуты, и происходит публикация, оба условия 1 и 2 устанавливаются как истинные, и разработчики оповещаются об этом как о сбое.
Итак, как правильно разработать такие оповещения?
Если мой подход близок к тому, что я хочу, следующие вопросы, которые приходят мне в голову,
- Есть ли способ сказать подсчитать ваши две минуты от случая, когда происходит публикация, чтобы увидеть, удовлетворяет ли условие подтверждения или нет.
- Или есть способ заставить оповещение подождать 2-3 минуты, чтобы увидеть, разрешится ли инцидент, и затем отправить оповещение разработчикам.
- Или, есть ли способ, которым мы можем посчитать встречающиеся условия этих условий удовлетворяющими и затем предупредить, только если они превышают 5 или 10 в течение 15 минут или что-то в этом роде?
Простите за длинный пост. Но любая помощь приветствуется.
1 ответ
Для расчета частоты выполнения заданий используется временное окно 2-3 минуты. Так что если у вас было 0 заданий в течение 2 минут или дольше, эта проблема повторяется. Это описано в документации о частичных метриках. Кроме того, внутри этой ссылки есть обходные пути.
Вы можете попробовать создать свои собственные метрики.