Назад | Перейти на главную страницу

Уведомление по электронной почте об ошибках в заданиях cron

Вы хотите получать уведомления по электронной почте об ошибках, возникающих при выполнении заданий cron.

Я использую CentOS и файл / etc / crontab для настройки.

Первый шаг, который я сделал:

MAILTO=my_email_address

а затем я добавил это к каждой записи crontab:

2>/dev/null

Это означает это

24 4 * * * root /usr/sbin/ntpdate pool.ntp.org

становится:

24 4 * * * root /usr/sbin/ntpdate pool.ntp.org 2>/dev/null

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

Я хотел бы знать, считаете ли вы то, что я сделал, правильным и есть ли в этом подводные камни.

Спасибо, Дэн

На самом деле, я думаю, вы сделали прямо противоположное тому, что хотели; вы подавили сообщения об ошибках (отправив STDERR в / dev / null) и получите только нормальный вывод.

Пытаться

24 4 * * * root /usr/sbin/ntpdate pool.ntp.org > /dev/null

Еще лучше запустить ntpd; это гораздо лучший способ синхронизировать ваши часы, чем переустановка их раз в день.

IIRC cron отправляет по электронной почте вывод команды, поэтому, если вы подавляете ошибки (бросая их в / dev / null) вы получите ТОЛЬКО вывод команды, а не ошибки. Нашел хороший скрипт: хронический который охватывает команды в crontab и делает именно то, что вы хотите: отправлять электронные письма только при ошибках.