I have been struggling to get monit to monitor my thin cluster for some time now. I am using 3 thin instances. These are my monit and thin config files:
/etc/thin/vocab.yml:
pid: tmp/pids/thin.pid
log: log/thin.log
port: 3000
max_conns: 1024
timeout: 30
chdir: /home/tenjack/apps/Vocab/current
max_persistent_conns: 512
environment: production
servers: 3
address: 0.0.0.0
daemonize: true
require: []
thin.monitrc:
check process thin0
with pidfile tmp/pid/thin.3000.pid
start program = "/etc/init.d/thin start"
stop program = "/etc/init.d/thin stop"
if totalmem > 50.0 MB for 5 cycles then restart
if failed port 3000 then restart
if cpu usage > 95% for 3 cycles then restart
if 5 restarts within 5 cycles then timeout
group thin
I have also tried pointing the pid path in the thin.monitrc file to tmp/pids/thin.pid along with many other variations but none of them seem to work. Anyone have any ideas?