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

Подавить сообщения об ошибках от cron, если задания не выполняются изредка

У нас есть куча заданий cron, которые иногда не работают, например, из-за сбоя в сети. Только изредка они выходят из строя постоянно (например, из-за ошибки или неправильной конфигурации).

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

Есть ли какие-нибудь инструменты (например, оболочки для работы cron), которые это делают? Как другие организации обрабатывают большое количество серверов Linux с заданиями cron?

Работы, в которых вы работаете cron должен обрабатывать ожидаемые ошибки. Необычно иметь cron работы, которые периодически выходят из строя. Исправьте программы, чтобы они не подводили. Это может означать, что вам нужно заключить их в логику повтора, которая ожидает короткий период времени, а затем повторяет попытку один или два раза. Однако мне не очень нравится повторная попытка.

Если у вас есть задания, которые обычно не работают из-за «сбоя в сети», устраните проблемы с сетью. Если это по другим причинам, устраните эту проблему.

Если вы хотите предупреждать только о том, что задание cron больше не работает (требуется определение), не предупреждайте об ошибке задания cron. Постройте процесс мониторинга, который может обнаружить проблему. Это может быть сложно. Если вы отслеживаете процесс обновления, может быть период, когда обновления отсутствуют, что вызывает ложное срабатывание на мониторе, который гарантирует, что обновления выполняются.

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

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