Existem algumas técnicas que você pode usar para monitorar cronjobs.
Para receber alertas de falhas do cronjob:
- Use a função MAILTO = padrão do cron. Se um cronjob produzir uma saída no STDERR, ele será enviado para o endereço que você escolher.
- Para acompanhar e lidar com os e-mails do cron, você pode direcioná-los para um sistema de tickets.
O sistema que você propõe para registrar as informações em um local "ciente da rede" soa como syslog . O syslog fornece um método simples para criar logs, normalmente gerencia arquivos como / var / log / messages. Você pode fazer personalizações básicas, como escolher quais arquivos recebem as mensagens de log.
O syslog pode ser iniciado em um modo de reconhecimento de rede. Por exemplo, você pode configurá-lo para que um escravo possa se conectar a um mestre:
[root@slave ~]# echo "hello world from slave" | logger -p local1.info
[root@master ~]# tail /var/log/myapp
Jun 29 13:07:01 192.168.1.2 logger: hello world from slave
Para uma distribuição baseada no Red Hat, uma configuração de exemplo é a seguinte:
[root@slave ~]# cat /etc/syslog.conf | grep local1
local1.* @192.168.1.3
[root@master ~]# cat /etc/sysconfig/syslog | grep SYSLOGD_OPTIONS
SYSLOGD_OPTIONS="-m 0 -r"
[root@master ~]# cat /etc/syslog.conf | grep local
local1.* /var/log/myapp
(A primeira linha de configuração redireciona os avisos de log local1. * para @ 192.168.1.3 ("master"). O segundo sinalizador -r da linha SYSLOGD_OPIONS ativa o suporte de rede. Por fim, a terceira linha de configuração direciona as mensagens local1. * recebidas no "mestre" em um arquivo).
A abordagem do syslog é melhor apenas para registrar erros / informações. Os arquivos de log têm menos visibilidade do que o e-mail, então você provavelmente não verá os logs, a menos que algo dê errado.
Se você optar por seguir a rota de estilo syslog, considere também syslog-ng: link .
Claro, você pode obter o melhor das duas técnicas usando os dois. Por exemplo, syslog'ing falhas e sucessos, e apenas mail para falhas.