
Dans ce didacticiel, nous verrons comment vérifier les journaux cron et surveiller les tâches en temps réel dans Ubuntu 18.04. Une tâche cron est un planificateur de tâches utilisé pour l'automatisation de tâches répétitives dans un environnement Linux. Il est normalement exécuté à une heure et une date spécifiques, telles que dictées par l'administrateur système. Les journaux cron aident vraiment l'administrateur à vérifier si les tâches cron ont été exécutées ou non à un moment donné.
Habituellement, vous pouvez afficher les événements cron en utilisant
cat /var/log/syslog | grep cron
Sortie

Cependant, il est préférable d'avoir un fichier cron.log séparé que vous pouvez utiliser pour surveiller les événements cron.
Configuration du fichier cron.log
Tout d'abord, allez dans /etc/rsyslog.d/50-default.conf
fichier et recherchez cette ligne #cron.* /var/log/cron.log
cat /etc/rsyslog.d/50-default.conf | grep cron
Sortie
#cron.* /var/log/cron.log
# cron,daemon.none;\
À l'aide de votre éditeur de texte préféré, ouvrez le fichier et décommentez la ligne comme indiqué à la ligne 10

Ensuite, créez le fichier cron.log
vi /var/log/cron.log
Redémarrez le service rsyslog
systemctl restart rsyslog
Vérifiez l'état de rsyslog pour vous assurer qu'il est en cours d'exécution
systemctl status rsyslog
Exemple de sortie

Désormais, tous les journaux seront enregistrés dans /var/log/cron.log
fichier.
Ensuite, nous allons créer un watchcron commande que nous invoquerons pour avoir un aperçu des événements cron en temps réel.
créer le fichier watchcron
nano watchcron
Ajoutez ce qui suit
#!/bin/bash
watch -n 10 tail -n 25 /var/log/cron.log
Enregistrer et quitter
Remarque :
watch -n 10 actualise la page toutes les 10 secondes.
tail -n 25 affiche les 25 dernières entrées.
Donnez au fichier watchcron les autorisations d'exécution
chmod +x watchcron
Copiez-le dans /usr/sbin comme indiqué
cp watchcron /usr/sbin
Pour regarder les événements cron en temps réel s'exécuter
watchcron
Exemple de sortie
Every 10.0s: tail -n 25 /var/log/cron.log Sun May 13 14:00:19 2018
May 13 06:47:01 ip-172-31-41-251 CRON[26305]: (root) CMD (test -x /usr/sbin/anac
ron || ( cd / && run-parts --report /etc/cron.weekly ))
May 13 07:17:01 ip-172-31-41-251 CRON[26993]: (root) CMD ( cd / && run-parts -
-report /etc/cron.hourly)
May 13 08:17:01 ip-172-31-41-251 CRON[28255]: (root) CMD ( cd / && run-parts -
-report /etc/cron.hourly)
May 13 09:17:01 ip-172-31-41-251 CRON[29487]: (root) CMD ( cd / && run-parts -
-report /etc/cron.hourly)
May 13 10:11:01 ip-172-31-41-251 CRON[30655]: (root) CMD (/sbin/reboot)
May 13 10:11:34 ip-172-31-41-251 cron[1226]: (CRON) INFO (pidfile fd = 3)
May 13 10:11:34 ip-172-31-41-251 cron[1226]: (CRON) INFO (Running @reboot jobs)
May 13 10:17:01 ip-172-31-41-251 CRON[2506]: (root) CMD ( cd / && run-parts --
report /etc/cron.hourly)
May 13 11:17:01 ip-172-31-41-251 CRON[2986]: (root) CMD ( cd / && run-parts --
report /etc/cron.hourly)
May 13 12:17:01 ip-172-31-41-251 CRON[3252]: (root) CMD ( cd / && run-parts --
report /etc/cron.hourly)
May 13 13:17:01 ip-172-31-41-251 CRON[3513]: (root) CMD ( cd / && run-parts --
report /etc/cron.hourly)
Si vous ne souhaitez pas recevoir d'e-mails de cron, ajoutez cette ligne au début de votre fichier crontab
MAILTO=""
Dans cet article, nous vous avons montré comment surveiller les journaux des tâches cron en temps réel à l'aide d'une seule commande. N'hésitez pas à essayer la procédure et à nous faire part de vos commentaires. Merci.