Где журнал cron /crontab?

Я хочу проверить, выполняется ли мое задание cron и в какое время. Я считаю, что есть журнал для моих sudo crontab -e заданий, но где?

Я искал google и нашел рекомендации для поиска в /var/log (в котором я ничего не вижу с 'cron' в имени) и для редактирования файла /etc/syslog.conf, который у меня также нет.

600 голосов | спросил Scott Szretter 11 PM00000040000004331 2011, 16:06:43

7 ответов


707

При установке по умолчанию задания cron регистрируются в

/var/log/syslog

Вы можете видеть только задания cron в этом файле журнала, запустив

 grep CRON /var/log/syslog

Если вы ничего не переконфигурировали, записи будут там.

ответил Richard Holloway 12 PM00000020000005231 2011, 14:58:52
192

Вы можете создать файл cron.log, содержащий только записи CRON, которые отображаются в syslog. Обратите внимание, что задания CRON будут отображаться в syslog, если вы будете следовать следующим указаниям.

Откройте файл

/etc/rsyslog.d/50-default.conf

Найдите строку, которая начинается с:

#cron.*

раскомментируйте эту строку, сохраните файл и перезапустите rsyslog:

sudo service rsyslog restart

Теперь вы должны увидеть файл журнала cron:

/var/log/cron.log

Активность Cron теперь будет регистрироваться в этом файле (в дополнение к syslog).

Обратите внимание, что в cron.log вы увидите записи, когда cron запускал скрипты в /etc/cron.hourly, cron.daily и т. д. - например. что-то вроде:

Apr 12 14:17:01 cd CRON[14368]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)

Однако вы не увидите больше информации о том, какие сценарии были фактически запущены внутри /etc/cron.daily или /etc/cron.hourly, если только эти сценарии не вызывают прямой вывод в cron.log (или, возможно, в какой-то другой файл журнала ).

Если вы хотите проверить, запущен ли crontab и не нужно искать его в cron.log или syslog, создайте crontab, который перенаправляет вывод в файл журнала по вашему выбору - что-то вроде:

01 14 * * * /home/joe/myscript >> /home/log/myscript.log 2>&1

Это перенаправит все стандартные выходные данные и ошибки, которые могут быть созданы скриптом, который запускается в указанном файле журнала.

ответил user12345 13 AMpFri, 13 Apr 2012 05:36:27 +040036Friday 2012, 05:36:27
65

Иногда бывает полезно постоянно следить за ним, в этом случае:

tail -f /var/log/syslog | grep CRON
ответил KennyCason 14 Mayam13 2013, 11:34:54
23

Вы также можете направлять вывод отдельных cronjobs в свои собственные журналы для лучшей читаемости, вам просто нужно будет добавлять выходные данные где-нибудь.

 0 15 * * *    /home/andrew/daily-backup.sh >> /var/log/daily-backup.log 2>&1
ответил Andrew Meyer 1 PMpWed, 01 Apr 2015 18:26:43 +030026Wednesday 2015, 18:26:43
6

Это очень старый вопрос, но ни один из этих ответов не кажется удовлетворительным.

Сначала запустите каждое задание cron каждую минуту, затем запустите cron как не-daemon (временно, просто убейте любой сард, который, возможно, уже был запущен) с протоколом тестирования:

crond -nx test

И посмотрите журнал выполнения вашей программы, протекающий через ваш терминал.

ответил Tristan Maat 17 J0000006Europe/Moscow 2016, 20:42:10
4

Он по умолчанию находится в /var/log/syslog.

Но он может быть настроен для создания отдельного cron.log, что более полезно.

Этот Q & A описывает процесс:

16.04: Как сделать cron create cron.log и контролировать его в режиме реального времени?

Также в этом ответе приведены инструкции по созданию команды wcron, которая отображает ее почти в режиме реального времени. Кроме того, он ссылается на другой ответ,

Как изменить уровень журнала cron?

, который показывает, как изменить уровень журнала, чтобы включить больше, чем просто начало заданий - уровень 15 также покажет ошибки и время окончания.

ответил SDsolar 22 +03002017-10-22T09:40:12+03:00312017bEurope/MoscowSun, 22 Oct 2017 09:40:12 +0300 2017, 09:40:12
1

Вы можете перенаправить вывод cron в файл tmp

Например: 00 11 07 * * /bin /bash /home/ubuntu/command.sh> /tmp /output 2 & 1

Ошибка и нормальный вывод, оба будут перенаправлены в один и тот же файл

ответил Himanshu 7 Maypm18 2018, 14:27:46

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132