В этой статье мы рассмотрим, как проверять журналы cron и отслеживать задания в режиме реального времени в Ubuntu 18.04. Задача cron – это планировщик задач, используемый для автоматизации повторяющихся задач в среде Linux. Обычно он выполняется в определенное время и по времени, как это продиктовано системным администратором. Журналы Cron действительно помогают администратору проверять, выполнялись ли задания cron или нет в определенное время.
Обычно вы можете просматривать события cron, используя
cat /var/log/syslog | grep cron
Вывод
Однако предпочтительнее иметь отдельный файл cron.log, который вы можете использовать для мониторинга событий cron.
Настройка cron.log-файла
Сначала откройте файл /etc/rsyslog.d/50-default.conf
и выполните поиск по этой строке #cron.* /var/log/cron.log
cat /etc/rsyslog.d/50-default.conf | grep cron
Вывод
# cron. * /var/log/cron.log # cron, daemon.none; \
Используя ваш любимый текстовый редактор, откройте файл и раскомментируйте строку, как показано в строке 10
Затем создайте файл cron.log
vi /var/log/cron.log
Перезапустить службу rsyslog
systemctl restart rsyslog
Проверьте состояние rsyslog, чтобы убедиться, что он запущен
systemctl status rsyslog
Образец вывода
Отныне в дальнейшем весь журнал будет сохранен в файл /var/log/cron.log
.
Затем мы создадим команду watchcron, которую будем вызывать, чтобы заглянуть в события cron в реальном времени.
Создание файла watchcron
nano watchcron
Добавьте следующее
#!/bin/bash
watch -n 10 tail -n 25 /var/log/cron.log
Сохраните и выйдите.
Заметка :
- watch -n 10 обновляет страницу каждые 10 секунд.
- tail -n 25 отображает последние 25 записей.
Предоставить разрешения на выполнение файла watchcron
chmod + x watchcron
Скопируйте его в /usr/bin, как показано на рисунке.
cp watchcron /usr/sbin
Для просмотра событий в режиме реального времени
watchcron
Образец вывода
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)
Если вы не хотите получать электронные письма из cron, добавьте эту строку в начало вашего файла crontab
MAILTO = ""
В этой статье мы показали вам, как контролировать журналы заданий cron в режиме реального времени, используя одну команду. Не стесняйтесь опробовать процедуру и дать нам свои отзывы. Спасибо.