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

Monit & backgroundrb с настраиваемыми путями к драгоценным камням

Я пытаюсь использовать monit для мониторинга процесса backgroundrb (который иногда убивается), но мне кажется, что команды запуска или остановки не работают (я просто получаю сообщение «сбой выполнения») - хотя они отлично работают из команды Подсказка.

Я не делаю ничего особо сложного:

check process backgroundrb_11006
    with pidfile "/home/user/site/tmp/pids/backgroundrb_11006.pid"
    start = "/usr/bin/ruby /home/user/site/script/backgroundrb start"
    stop = "/usr/bin/ruby /home/user/site/script/backgroundrb stop"
    if cpu > 90% for 2 cycles then restart
    if totalmem > 512 MB for 2 cycles then restart
    if 4 restarts within 4 cycles then timeout
group backgroundrb

У меня есть настраиваемое местоположение для некоторых моих драгоценных камней, таких как пакет (/home/user/.gem/ruby/1.8/bin), и я подозреваю, что часть проблемы заключается в том, что monit использует спартанский PATH (цитирую http://mmonit.com/monit/documentation/monit.html - PATH = / bin: / usr / bin: / sbin: / usr / sbin), что делает эти драгоценные камни недоступными. Кроме того, у меня нет ошибок в журнале отладки backgroundrb.

Я хотел бы услышать от всех, кто знает, как я могу настроить backgroundrb (или мои команды запуска / остановки), чтобы заставить эту работу работать.

Привет, Воган.

Вы можете создать собственные сценарии запуска / остановки с указанием правильного пути, а затем использовать эти сценарии с monit.

Очень простой стартовый скрипт (backgroundrb_monit_start)

#!/bin/sh
PATH=/bin:/usr/bin:/sbin:/usr/sbin:/add/your/other/paths
GEM_HOME=/home/mygemrepository
/usr/bin/ruby /home/user/site/script/backgroundrb start

И отслеживаем конфиг:

start = "/usr/bin/ruby /home/user/site/script/backgroundrb_monit_start"