Por padrão, a saída de crontab
jobs é enviada para o endereço de e-mail local do usuário proprietário. por exemplo: a saída crontab
para aUser no host www.aDomain.com será enviada para [email protected] . O sistema usa o seu mailer padrão para realizar a tarefa.
Você pode desviar essa saída para um endereço de e-mail alternativo adicionando uma instrução MAILTO
no arquivo crontab. Por exemplo:
# Mail any output to [email protected], no matter whose crontab this is
[email protected]
# Run the following command ten minutes after midnight, every day
10 0 * * * $HOME/bin/aJob.sh
Tenha cuidado ao usar um endereço de e-mail externo para receber logs do crontab. Mensagens frequentemente enviadas podem ser capturadas em um filtro de spam. Você teria que marcar as mensagens como Não é Spam para serviços como Yahoo, HotMail ou Gmail.
Uma solução alternativa seria redirecionar a saída de seus comandos crontab para um arquivo de sua escolha. No exemplo abaixo, a saída stdout
e stderr
é enviada para /tmp/aJob.log
. Esse método elimina a possibilidade de uma mensagem de email ser enviada.
# Run the following command ten minutes after midnight, every day
10 0 * * * $HOME/bin/aJob.sh >> /tmp/aJob.log 2>&1
Outra alternativa é enviar stderr
logs para email e stdout
logs para um arquivo. Nesse caso, você será alertado por e-mail quando seus comandos crontab
gerarem mensagens de erro inesperadas. A diferença com o exemplo anterior é que 2>&1
é removido para permitir que stderr
output vá para o console e, portanto, envie por e-mail.
# Mail any output to [email protected], no matter whose crontab this is
[email protected]
# Run the following command ten minutes after midnight, every day
10 0 * * * $HOME/bin/aJob.sh >> /tmp/aJob.log
Leia mais tabelas do crontab e comando crontab