Se você quiser monitorar muitos aplicativos em servidores diferentes, vá para o NagiOS, se você quiser monitorar aplicativos específicos, propriedade de arquivos, qualquer coisa, então vá para o Monit.
Para monitorar processos daemon ou programas semelhantes em execução no host local. O Monit é particularmente útil para monitorar processos do daemon, como aqueles iniciados no tempo de inicialização do sistema a partir do /etc/init.d/. Por exemplo, sendmail, sshd, apache e mysql.
Em diferença para muitos sistemas de monitoramento, o Monit pode agir se uma situação de erro ocorrer, por exemplo; Se o sendmail não estiver em execução, o Monit pode iniciar o sendmail novamente automaticamente ou se o apache estiver usando muitos recursos (por exemplo, se um ataque DoS estiver em andamento) O Monit pode parar ou reiniciar o apache e enviar uma mensagem de alerta. Monit também pode monitorar características do processo, como; quanta memória ou ciclos cpu um processo está usando
Atualização :: parte da configuração
O Monit é mais fácil de instalar através do aptitude ou do apt-get
sudo aptitude install monit
Depois de fazer o download dos downloads, você pode adicionar programas e processos ao arquivo de configuração
vim /etc/monit/monitrc
set daemon 3 # check services at 3-second intervals
set logfile /var/log/monit.log # you can see what monit is doing
set alert [email protected] # receive all alerts
include /etc/monit.d/* # add monit script path
Em seguida, crie um script de monit para o seu aplicativo, apenas observe o seguinte exemplo de script:
Você só precisa criar um script de monit em /etc/monit.d/
como /etc/monit.d/httpd.monit
, depois de recarregar o serviço de monit e verificar os logs de monit tail -f /var/log/monit.log
Para o Apache
check process apache with pidfile /usr/local/apache/logs/httpd.pid
start program = "/etc/init.d/httpd start" with timeout 60 seconds
stop program = "/etc/init.d/httpd stop"
if cpu > 60% for 2 cycles then alert
if cpu > 80% for 5 cycles then restart
if totalmem > 200.0 MB for 5 cycles then restart
if children > 250 then restart
if loadavg(5min) greater than 10 for 8 cycles then stop
if failed host www.tildeslash.com port 80 protocol http
and request "/monit/doc/next.php"
then restart
if failed port 443 type tcpssl protocol http
with timeout 15 seconds
then restart
if 3 restarts within 5 cycles then timeout
depends on apache_bin
group server
Para o Safesquid Proxy
# Check if the safesquid process is running by monitoring the PID recorded in /opt/safesquid/safesquid/run/safesquid.pid
check process safesquid with pidfile /opt/safesquid/safesquid/run/safesquid.pid
group root
start program = "/etc/init.d/safesquid start"
stop program = "/etc/init.d/safesquid stop"
mode active
# If safesquid process is active it must be updating the performance log at
# /opt/safesquid/safesquid/logs/performance/performance.log every 2 seconds.
# If the file is more than 3 seconds old we definitely have a problem
check file "safesquid-PERFORMANCELOG" with path /opt/safesquid/safesquid/logs/performance/performance.log
if timestamp > 3 SECOND then alert