Служба мониторинга, которая может запускать сценарии

В настоящее время я пользуюсь службой мониторинга производительности New Relic. Пока отлично работает, за исключением того, что я бы хотел, чтобы некоторые вещи были автоматизированы. Я просто получаю уведомление по электронной почте, когда производительность плохая или мой сайт не работает. Если сайт не работает, я хотел бы попытаться перезапустить сервер приложений (при необходимости убивая процесс, что иногда и происходит). Если по прошествии некоторого времени это не сработает, попробуйте перезагрузить всю машину... Я даже заплатил за PagerDuty, который может анализировать почтовые уведомления New Relic и звонить или отправлять мне SMS-сообщения с процедурой эскалации уведомлений. Но он не может запускать сценарии...

Похоже, это будет популярной функцией любого инструмента мониторинга веб-сайтов... что-нибудь хорошее там?

5 ответов

Решение

Если размещенное решение в порядке, AlertFox может запустить сценарии ("макросы") в случае ошибки. Эти макросы могут, например, войти в панель конфигурации вашего веб-хостинга и запустить перезагрузку.

Проблема с размещенными сервисами мониторинга, такими как New Relic, выполняющими предоставленные пользователем сценарии, заключается в проблемах безопасности - если сцена не очень хорошо изолирована, сценарий может оказать неблагоприятное воздействие на системы службы мониторинга.

Единственный способ действительно сделать это безопасно - это иметь очень ограниченный набор возможных реакций, которые можно сделать безопасными. Наиболее распространенным из них может быть что-то вроде обратных вызовов HTTP, когда служба мониторинга создает POST для URL-адреса по вашему выбору, содержащего данные о том, что произошло, на которые вы можете реагировать и делать все, что вам нужно. Недостатком этого является то, что в вашей инфраструктуре должна работать еще одна служба, которая принимает эти события и предпринимает действия.

Я не могу найти ничего в быстром поиске Google для New Relic, который бы охватывал подобные вещи; Вполне возможно, что они не справляются с этим, и уведомления по электронной почте /SMS - лучшее, что вы получите, не обращаясь к другой службе мониторинга.

Именно по этим причинам я предпочитаю запускать собственную инфраструктуру мониторинга - такие настройки, как New Relic, могут быть полезны для специалистов, которые они могут предложить для мониторинга, скажем, производительности приложений Rails, но для управления самой инфраструктурой я оставляю ее в доме.

Ну, сценарии Nagios обычно только сообщают о состоянии назад Nagios, но ничто не помешает им делать больше, когда им приходится сообщать о предупреждении или сбое.

Изменить: Технически, это работает и легко сделать, но может иметь непредвиденные последствия. Лучшее решение - настроить Nagios для решения проблемы с инфраструктурой обработчика событий.

Если вы хотите легкое решение, вы можете использовать Monit.

Более того, он может быть интегрирован с nagios позже, если хотите.

SeaLion может запустить любой инструмент командной строки / скрипт. Это дает вам бесконечные возможности. Например, вы можете написать свои собственные скрипты bash и заставить GNU Mailutils отправлять уведомления по электронной почте. Он также имеет предупреждения для наиболее часто используемых показателей, таких как процессор, память, средняя загрузка и т. Д.

Другие вопросы по тегам