私は、delayed_job プロセスを監視するために bluepill をセットアップしました。
Ubuntu 12.04 を使用しています。
Ubuntu のupstart
. 私のupstart configは以下です(/etc/init/bluepill.conf
)。
description "Start up the bluepill service"
start on runlevel [2]
stop on runlevel [016]
expect fork
exec sudo /home/deploy/.rvm/wrappers/<app_name>/bluepill load /home/deploy/websites/<app_name>/current/config/server/staging/delayed_job.bluepill
# Restart the process if it dies with a signal
# or exit code not given by the 'normal exit' stanza.
respawn
expect daemon
の代わりに試してみましたexpect fork
。expect...
また、行を完全に削除しようとしました。
マシンが起動すると、bluepill が正常に起動します。
$ ps aux | grep blue
root 1154 0.6 0.8 206416 17372 ? Sl 21:19 0:00 bluepilld: <app_name>
ここでは、bluepill プロセスの PID は 1154 です。しかしupstart
、間違った PID を追跡しているようです。
$ initctl status bluepill
bluepill start/running, process 990
これにより、kill -9
.
さらに、間違った PID が追跡されているため、再起動/シャットダウンがハングするだけで、毎回マシンをハードリセットする必要があると思います。
ここで何が問題になる可能性がありますか?