Question

J'ai suivi la suggestion dans cette question

J'utilise Django, j'ai mis le script à jour du magasin et l'heure de chaque exécution du script dans la db, mais pas d'entrée a été encore enregistrée dans la base de données.


Est-il possible de comprendre, autre que de taper « top » et la recherche par le biais?

Était-ce utile?

La solution

D'abord, je voudrais probablement configurer cron pour vous envoyer une sortie en utilisant MAILTO:

Dans / etc / crontab:

MAILTO=username

En second lieu, je l'habitude d'ajouter quelque chose à mon script (presque) ne peut manquer peut-être, comme suit:

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

# ... rest of program

Si vous appelez un script python directement à partir Cron, vous pourriez faire quelque chose de similaire ou créer un script shell wrapper.

Autres conseils

Si vous avez sendmail installé, vous pouvez ajouter ce qui suit à '/ etc / alias'

root: your_name@domain.com

Une fois que vous faites cela, mettez à jour les alias exécutant cette commande:

sudo newaliases

Cron vous enverra automatiquement à chaque fois qu'un travail est exécuté. Pas besoin de préciser que dans le fichier crontab.

En outre, assurez-vous de test vos capacités de messagerie (par exemple, assurez-vous que vous êtes en mesure d'envoyer des e-mails à partir du serveur) et enfin, créer un cronjob trivial et test si vous recevez un e-mail.

Ne présumez pas!

En plus de la mise en place cron pour envoyer un email, vous pouvez envoyer la sortie de Cron à une installation de journal séparé syslog en ajoutant ce qui suit à votre /etc/syslog.conf.

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

Cela devrait enregistrer un message à /var/log/cron.log chaque fois qu'un travail est exécuté.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top