Получать уведомление по электронной почте, когда мой cron выходит из строя с ненулевым кодом выхода - Crontab

Я запланировал сценарий take_backup.sh в crontab, например, так

00 19 * * * bash /home/test/take_backup.sh > /home/test/backup.log 2>&1 || mail -s "Backup failed, check attached logs" someone@gmail.com < /home/test/backup.log

Требуется отправлять только уведомление по электронной почте с журналами прикрепляется, когда cron выходит из строя с ненулевым кодом выхода. Я настроил журналы и коды выхода в сценарии, чтобы предоставить более подробную информацию в backup.log . Однако, когда этот cron выходит из строя, я не получаю никаких уведомлений.

В чем я ошибаюсь?

1
задан 5 April 2020 в 08:20
1 ответ

если часть "почта" выполнена успешно, то задание cron выполнено успешно (и, следовательно, код равен нулю)

 00 19 * * * bash /home/test/take_backup.sh > /home/test/backup.log 2>&1 || ( mail -s "Backup failed, check attached logs" someone@gmail.com < /home/test/backup.log && false )
0
ответ дан 5 April 2020 в 07:33

Теги

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