I’m battling with Monit on Debian Etch and need some help. I’ve
included the mongrel.monitrc file I’m using. If you issue the start
program and stop program commands shown in that file from the command
line, they work fine, regardless of what directory you issue them
from. Interestingly, calling “monit status” does show that the
test3_8001 process is being monitored and shows the correct statistics
for uptime, etc. However, when you run “monit restart test3_8001”
there is a failure. “monit status” eventually shows “Execution
failed” as a status for test3_8001, but does continue to show all the
other correct stats as before. Checking the monit_errors.log shows
only the following:
488 [PDT Jun 6 20:56:22] info : ‘mongrel_test3_8001’ trying to
restart
489 [PDT Jun 6 20:56:22] info : ‘mongrel_test3_8001’ start: /usr/
bin/env
490 [PDT Jun 6 20:56:23] error : ‘mongrel_test3_8001’ failed to
stop
Other notes:
- Paths
—> I tried just having the /usr/local/lib/site_ruby/gems/bin/
mongrel_rails cluster::start -C /home/jay/test/testing/config/
mongrel_cluster.yml --clean --only 8001" as a path
—> I also tried adding the path to the ruby executable which is /usr/
local/bin/ruby on my machine prior to the above.
the mongrel.monitrc file:
check process test3_8001
with pidfile /home/jay/test/testing/tmp/pids/mongrel.8001.pid
start program = “/usr/bin/env PATH=$PATH:/usr/local/lib/site_ruby/
gems/bin /usr/local/lib/site_ruby/gems/bin/mongrel_rails
cluster::start -C /home/jay/test/testing/config/mongrel_cluster.yml –
clean --only 8001”
stop program = “//usr/bin/env PATH=$PATH:/usr/local/lib/site_ruby/
gems/bin /usr/local/lib/site_ruby/gems/bin/mongrel_rails cluster::stop
-C /home/jay/test/testing/config/mongrel_cluster.yml --only 8001”
if cpu > 60% for 2 cycles then alert
if cpu > 80% for 4 cycles then restart
if totalmem > 110.0 MB for 4 cycles then restart
if children > 250 then restart
if loadavg(5min) greater than 10 for 8 cycles then stop
if failed host www.tildeslash.com port 80 protocol http
and request “/monit/doc/next.php”
then restart
if failed port 443 type tcpssl protocol http
with timeout 15 seconds
then restart
if 20 restarts within 20 cycles then timeout
depends on apache_bin
group test_mongrels
Thanks for any thoughts - I’m at a loss…
JBB