
Me gustaría monitorear un servicio del sistema en un conjunto de hosts que ejecutan centos. El estado se puede obtener fácilmente desde systemctl, pero ¿alguien conoce alguna forma de enviar un correo electrónico si el servicio muere (es decir, el estado del servicio no está "en ejecución")?
Me gustaría evitar enviar cientos de correos electrónicos si el servicio no funciona durante horas seguidas, lo que podría significar evitar trabajos cron a corto plazo. Me gustaría recibir tal vez 1 correo electrónico si el servicio falla, posiblemente hasta 1 por hora, pero incluso eso parece mucho.
He oído que Nagios, Zabbix o Kapacitor podrían cumplir los requisitos aquí, pero no estoy seguro de cuál sería mejor para resolver este tipo de problema. Cualquier consejo sería muy útil.
Respuesta1
Nagiosenvía un correo electrónico a una dirección de correo electrónico cuando un ping no regresa. Puedes configurar un montón de opciones;
check_period 24x7
check_interval 5
retry_interval 1
max_check_attempts 10
notification_period 24x7
notification_interval 30
notification_options d,u,r
En particular, puede ver una opción para "intervalo de notificación", que es la opción para el período de tiempo entre alertas por correo electrónico.
Recientemente he notado que han agregado unReconocimientosistema, donde si un sistema deja de funcionar, puede "reconocerlo" y no enviará más notificaciones.