монитор: не удалось перезапустить

Я использую monit для sidekiq

пока я запускаю файл журнала monit, он показывает ошибку.

[EDT Jun 18 09:50:11] error    : 'sidekiq_site' process is not running
[EDT Jun 18 09:50:11] info     : 'sidekiq_site' trying to restart
[EDT Jun 18 09:50:11] info     : 'sidekiq_site' start: /bin/bash
[EDT Jun 18 09:51:41] error    : 'sidekiq_site' failed to start

/etc/monit/conf.d/sidekiq.conf

check process sidekiq_site
  with pidfile /var/www/project/shared/pids/sidekiq.pid
  start program = "bash -c 'cd /var/www/project/current ; RAILS_ENV=production bundle exec sidekiq --index 0 --pidfile /var/www/project/shared/pids/sidekiq.pid --environment production --logfile /var/www/project/shared/log/sidekiq.log --daemon'" as uid root and gid root with timeout 90 seconds
  stop program = "bash -c 'if [ -d /var/www/project/current ] && [ -f /var/www/project/shared/pids/sidekiq.pid ] && kill -0 `cat /var/www/project/shared/pids/sidekiq.pid`> /dev/null 2>&1; then cd /var/www/project/current && bundle exec sidekiqctl stop /var/www/project/shared/pids/sidekiq.pid 1 ; else echo 'Sidekiq is not running'; fi'" as uid root and gid root
  if totalmem is greater than 200 MB for 2 cycles then restart # eating up memory?
  group site_sidekiq

/etc/monit/monitrc

set daemon 30

set logfile /var/log/monit.log
set idfile /var/lib/monit/id
set statefile /var/lib/monit/state

set eventqueue
    basedir /var/lib/monit/events
    slots 100



set httpd port 2812
   allow admin:""
set httpd port 2812 and
    use address xx.xxx.xx.xx
    allow xx.xx.xx.xx

check system trrm_server
  if loadavg(5min) > 2 for 2 cycles then alert
  if memory > 75% for 2 cycles then alert
  if cpu(user) > 75% for 2 cycles then alert

include /etc/monit/conf.d/*

person Debadatt    schedule 18.06.2015    source источник
comment
Попробуйте изменить один из портов set httpd port 2812 на другой.   -  person zmii    schedule 18.06.2015
comment
Вы пытались запустить side_kiq вручную?   -  person zmii    schedule 18.06.2015
comment
@zmii: попытка вручную работает. Но при использовании moint не работает.   -  person Debadatt    schedule 18.06.2015
comment
Запуск демона monit с http-интерфейсом по адресу [xx.xxx.xx.xx:2815] [EDT 18 июня 10:05:55] info : Запуск HTTP-сервера monit по адресу [xx.xx.xx.xx:2815] [EDT 18 июня 10:05:55] информация: HTTP-сервер monit запущен [EDT 18 июня 10:05:55] информация: 'trrm_server' Monit запущен [EDT 18 июня 10:05:55] ошибка: процесс 'sidekiq_site' не запущен [EDT 18 июня 10:05:55] информация: 'sidekiq_site' пытается перезапустить [EDT 18 июня 10:05:55] информация : 'sidekiq_site' start: /bin/bash   -  person Debadatt    schedule 18.06.2015
comment
Проверьте мой вопрос и мой ответ по этой проблеме. Надеюсь, поможет   -  person Viktova    schedule 14.08.2018


Ответы (1)


При запуске события start/stop в monit не устанавливается переменная пути, поэтому все программы должны иметь абсолютные пути, даже ваш вызов bash.

Monit не использует переменные среды.

person T'Saavik    schedule 22.02.2019