2014-01-09 2 views
2

У меня есть несколько заданий cron и фоновые задачи на разных серверах. Эти задачи могут потерпеть неудачу по ряду причин:Система мониторинга работы cron и автоматизированных задач?

  • недостаток дискового пространства
  • обработки странно, нечитаемые типов файлов
  • логических ошибки/ошибок в программах
  • недействительны хроны запись
  • недействительное JSon полученные
  • Ошибка сети подключения
  • дБ замки
  • сек ystem library update breaks program

Почему они не смогли запустить, важно, но самое главное - знать, что им не удалось запустить.

Существует ли единый способ отслеживания нескольких заданий и быть предупрежденным, если они не могут работать в назначенное время по любой причине? Я использую Ubuntu, сценарии в основном в Ruby.

Примечание:

Я специально искал основы или системы, которая работает на нескольких серверах, и что оповещение по электронной почте или текст, построенный в, и тот, который может выжить ограниченное дисковое пространство. Таким образом, решение, представленное в How can I setup a system to tell me if a cron job is NOT running fine?, кажется неприменимым.

+0

Мы используем http://www.clowder.io для этого типа услуг – keithhackbarth

ответ

1

Будет http://www.pushmon.com заполнить ваши потребности? Он создан прежде всего для того, чтобы вы знали, не выполнялось ли задание cron или запланированное задание. Вы можете разместить его на любом из своих серверов и получать сообщения электронной почты и текстовые сообщения. Идея заключается в том, что вы «пингом» PushMon, когда ваша работа прошла успешно, и PushMon предупредит вас, если он не получит пинг.

4

Он все еще находится в активной разработке, но я бы посоветовал вам взглянуть на https://github.com/jamesrwhite/minicron, я считаю, что он отвечает всем требованиям, которые вы указали, и многое другое!

Отказ от ответственности: Я разработчик, работающий над этим.

4

Cronitor (https://cronitor.io) был инструментом, который я построил именно для этой цели. Это в основном сводится к тому, чтобы быть маяком отслеживания, который использует HTTP-запросы как пинги (похожие на pushmon).

Однако, одна из потребностей, которые у меня были (и то, что пушмон и подобные инструменты не могли предложить), получал оповещения, если задания cron начали слишком долго работать (или, наоборот, если они начали заканчивать слишком быстро). Cronitor решает это, разрешая вам при необходимости инициировать событие begin и конечное событие, чтобы отслеживать продолжительность.

Продолжительность слежения была обязательной для меня, потому что у меня была крона, которая была запланирована каждый час, но с течением времени начала принимать более часа, чтобы бежать. Это было катастрофой;)

Смежные вопросы