Pergunta

Eu segui a sugestão em essa questão

Enquanto estou usando o Django, configurei o script para armazenar a data e a hora de cada execução do script no banco de dados, mas nenhuma entrada foi armazenada ainda no banco de dados.


Existe uma maneira de descobrir, além de digitar "top" e pesquisar?

Foi útil?

Solução

Primeiro, eu provavelmente configuraria Cron para enviar a si mesmo qualquer saída usando MAILTO:

Em /etc /crontab:

MAILTO=username

Segundo, geralmente adiciono algo ao meu script que (quase) não pode falhar, como o seguinte:

#!/bin/sh
echo "$0 ran on `date +%c`" >> /tmp/crontab_test.log

# ... rest of program

Se você está chamando um script python diretamente da Cron, poderá fazer algo semelhante ou criar um script de shell de wrapper.

Outras dicas

Se você instalou o Sendmail, poderá adicionar o seguinte a '/etc/aliases'

ROOT: your_name@domain.com

Depois de fazer isso, atualize os aliases executando este comando:

sudo newaliases

Cron enviará automaticamente o e -mail sempre que um trabalho é executado. Não há necessidade de especificar isso no arquivo crontab.

Além disso, certifique -se de você teste Seus recursos de email (por exemplo, verifique se você pode enviar e -mails do servidor) e, por fim, criar um cronjob trivial e testar se você receber um email.

Não presuma!

Além de configurar o Cron para enviar e -mail, você pode enviar a saída de Cron para uma instalação de log syslog separada, adicionando o seguinte ao seu /etc/syslog.conf.

# Log cron stuff 
cron.*                                                  /var/log/cron.log 

Isso deve registrar uma mensagem para /var/log/cron.log cada vez que um trabalho é executado.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top