Activer le log de Cron


Cron est un ordonnanceur bien connu et présent sur toutes les distributions GNU/Linux. Je me suis mis à y toucher sur le serveur qui héberge ce site pour automatiser certains traitements. Mais pour vérifier que Cron ne rencontre pas d'erreur avec l'ordonnancement et pour s'assure que les tâches sont bien lancées, il n'y a pas, par défaut, de log dédié à Cron. Mais heureusement on peut l'activer facilement.

En regardant de plus près dans /var/log/syslog on trouve tout de même quelques infos sur Cron. Mais il est tout à fait possible d'activer un log spécifique. Pour cela il suffit de décommenter une ligne dans un ficher de configuration de rsyslog, le moteur de log de GNU/Linux.

Editez avec les droits root :
vim /etc/rsyslog.d/50-default.conf
Trouvez la ligne ci-dessous et décommentez la(supprimer le #)
#cron.*     /var/log/cron.log
La ligne devient
cron.*      /var/log/cron.log
Enregistrez et redémarrer rsyslog (droit root nécessaire)
/etc/init.d/rsyslog restart
Un fichier /var/log/cron.log devrait être créé.


Si vous souhaitez avoir un fichier de log pour un traitement en particulier, vous pouvez rediriger les messages et les erreurs du traitement dans un autre fichier. Pour cela, éditez Cron avec la commande
crontab -e
Puis ajoutez à la fin d'une ligne de traitement la redirection vers un autre fichier de log. Celle-ci commence par les symboles ">>"
01 14 * * * /home/p3ter/mon_script.sh >> /home/p3ter/log/mon_script.log 2>&1




Un article à retrouver sur P3ter.fr
Vus : 417
Publié par P3ter : 34