以下を介して監視するプロセスを追加しようとしていますmonit
。
check process sidekiq_worker_flow with pidfile /home/flio/apps/stage-flow/current/tmp/pids/sidekiq-1.pid
start program = "cd /home/flio/apps/stage-flow/current && source /etc/profile.d/rbenv.sh && bundle exec sidekiq -i 1 -e staging --pidfile /home/flio/apps/stage-flow/current/tmp/pids/sidekiq-1.pid --logfile /home/flio/apps/stage-flow/shared/log/sidekiq-1.log --daemon" as uid flio
stop program = "cd /home/flio/apps/stage-flow/current && bundle exec sidekiqctl stop /home/flio/apps/stage-flow/current/tmp/pids/sidekiq-1.pid 10" as uid flio
if 5 restarts within 15 cycles then timeout
いくつかのデバッグコマンド(echo 'bla bla'> ~/monint_debug.log')を呼び出そうとしましたが、何も得られないため、「プログラムの起動」のコマンドは呼び出されていないようです。また、rootでコマンドを実行して手動で起動および停止しましたが、正常に動作しました。別の同様のスクリプトがあります。
check process sidekiq_worker_2
with pidfile /var/www/flio/current/tmp/pids/sidekiq-1.pid
start program = "/bin/su -lc 'cd /var/www/flio/current && source /etc/profile.d/rbenv.sh && bundle exec sidekiq -i 1 -e production --pidfile /var/www/flio/current/tmp/pids/sidekiq-1.pid --logfile /var/www/flio/shared/log/sidekiq-1.log --daemon -C /var/www/flio/current/config/sidekiq_2.yml' flio"
stop program = "/bin/su -lc 'cd /var/www/flio/current && bundle exec sidekiqctl stop /var/www/flio/current/tmp/pids/sidekiq-1.pid 10' flio"
if 5 restarts within 15 cycles then timeout
そしてそれは素晴らしい作品です。