Отправить оповещение, если системный сервис не работает

490
user3270760

Я хотел бы отслеживать системный сервис на множестве хостов, на которых все работают centos. Статус можно легко получить из systemctl, но кто-нибудь знает, как отправить электронное письмо, если служба умирает (то есть состояние службы не «работает»)?

Я хотел бы избежать отправки сотен электронных писем, если сервис не работает в течение нескольких часов, что может означать отказ от краткосрочных заданий cron. Я хотел бы, возможно, 1 электронное письмо, если сервис не работает, возможно, целых 1 час, но даже это похоже на многое.

Я слышал, что Nagios, Zabbix или Kapacitor могли бы отвечать всем требованиям, но я не уверен, что будет лучшим решением для такого рода проблем. Любой совет будет очень полезным.

0
Это похоже на соответствующий ответ: https://serverfault.com/questions/694818/get-notification-when-systemd-monitored-service-enters-failed-state Eric Renouf 7 лет назад 1

1 ответ на вопрос

0
Shiffle McDoobles

Nagios отправляет электронное письмо на адрес электронной почты, когда пинг не возвращается. Вы можете настроить кучу вариантов;

check_period 24x7 check_interval 5 retry_interval 1 max_check_attempts 10 notification_period 24x7 notification_interval 30 notification_options d,u,r  

В частности, вы можете увидеть опцию «Интервал уведомления», которая является опцией для периода времени между оповещениями по электронной почте.
Недавно я заметил, что они добавили систему подтверждения, где, если система выходит из строя, вы можете «подтвердить» ее, и она больше не будет отправлять уведомления.

Похожие вопросы