Monitorea los procesos de tu servidor

Monit es un demonio, para sistemas UNIX, muy útil cuando necesitas controlar las 24hs del día uno o varios procesos de tu servidor en caso de que mueran inesperadamente. Monit puede iniciar un proceso si no funciona, reinicie un proceso, si no responde, detener un proceso que utiliza mucho los recursos y enviarte un mail avisándote de lo ocurrido.





También puedes utilizarlo para controlar archivos, directorios y dispositivos del servidor de acuerdo a cambios como ser de tiempo, tamaño, o modificación.

Este ejemplo indica como verificar el proceso apache2 de un servicio web.


Como instalar Monit:


# apt-get install monit.

El archivo de configuración se encuentra en /etc/monit/monitrc, trae incorporada una plantilla para indicar que hay que hacer en caso de un fallo de proceso o cambios de archivos.


Indicar el tiempo (en segundos) del monitoreo:


set daemon 120.


Habilitar el log en syslog:


set logfile syslog facility log_daemon.


Indicar el servidor de correo para el envio de mails:


set mailserver mail.domain.com


Editar la plantilla del mail:


1)set mail-format { from: [email protected]
2) subject: $SERVICE $EVENT at $DATE
3) message: Monit $ACTION $SERVICE at $DATE on $HOST: $DESCRIPTION.


Indicar las acciones a realizar para cada evento (en este caso Apache):


1) el proceso a vigilar
2) check process apache2 with pidfile /var/run/apache2.pid
3) el comando para arrancar
4) start program = "/etc/init.d/apache2 start"
5) el comando para detener
6) stop program = "/etc/init.d/apache2 stop"
7) que hacer si falla
8) if failed host 127.0.0.1 port 80 protocol http
9) then restart
10) que hacer si fallan los intentos
11)if 3 restarts within 5 cycles then timeout
12) grupo que tiene el permiso para reiniciar el proceso
13) group root


Como se trata de un demonio es necesario iniciarlo, pero antes hay que indicar que esto se puede realizar, para ello hay que editar el archivo /etc/default/monit:


startup=1


Ahora para iniciarlos solo basta con:


# /etc/init.d/monit start


Para detenerlo:


# /etc/init.d/monit stop


Puedes ver que todo este correctamente funcionando haciendo:


# tail -f /var/log/messages

# tail -f /var/log/syslog


Espero que les sea de utilidad este aporte
desde ya, muchas gracias Tranquilo/a