Eu não consegui fazer com que o crashmail funcione, então aqui estão duas soluções que eu tentei.
- Monitorando o processo do supervisor com um listener de eventos baseado em nó
listener de eventos do supervisord
Aqui está a configuração:
[eventlistener:monitoring]
command = /usr/bin/nodejs /etc/supervisor/monitoring.js
events = PROCESS_STATE,PROCESS_COMMUNICATION,SUPERVISOR_STATE_CHANGE
Na documentação aqui , você pode ouvir qualquer evento e enviar um email dentro desse retorno de chamada de função.
-
Como o serviço que precisa ser monitorado é um serviço da web. Eu uso o cron para verificar o site periodicamente; se um código de resposta não-200 for retornado, envie um email dentro do script bash com o qual você está verificando o código de resposta.
#!/bin/bash httpCode=$(curl -s -o /dev/null -w "%{http_code}" siteUrl) if [ $httpCode -eq "200" ] then echo "OK" else //send email fi