Как настроить monit для мониторинга delayed_job

Delayed_job используется в Фан Партии для фоновой обработки загруженных картинок. Работает замечательно, но не без греха — периодически падает гадина. Перерыл Интернет в поисках нужного рецепта, перепробовал кучу конфигураций для мониторинга delayed_job, максимум чего добился — стали приходить уведомления по почте, если процесс delayed_job падал.

Уже было совсем отчаялся, но вчера нашёл простое и элегантное решение — теперь сервис обработки картинок сможет работать без моего участия, а мне не придётся круглосуточно мониторить сервер — этим займётся monit.

Решение с конфигурационным файлом оказалось более чем простым.

1. Итак, первым делом открываем конфигурационный файл: sudo nano /etc/monit/monitrc

2. Вставляем следующий (ваш) код для настройки мониторинга delayed_job

check process job_runner
  with pidfile [Путь к pidfile]/job_runner.pid
  start program = «/bin/su — [user_name] -c ‘/usr/bin/env RAILS_ENV=production ruby [Путь к script вашего Rails app]/script/delayed_job start'»
  stop program = «/bin/su — [user_name] -c ‘/usr/bin/env RAILS_ENV=production ruby [Путь к script вашего Rails app]/script/delayed_job stop'»

3. Сохраняем: Ctrl + X, Y

4. Перезапускаем демон monit: sudo /etc/init.d/monit restart

5. Занимаемся разработкой, вместо сисадминства.

Надеюсь вам это пригодится.

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход /  Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход /  Изменить )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.