monit-general
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [monit] Can't use hb_standby in monit


From: Martin Pala
Subject: Re: [monit] Can't use hb_standby in monit
Date: Wed, 5 Nov 2008 20:45:43 +0100

Your configuration will execute the "/usr/lib/heartbeat/hb_standby" only in the case, that the protocol test of http://127.0.0.1:80 failed 4 times. This test is evaluated however only in the case that the process is running - if apache is not running, monit skips the other tests since it knows that they will fail (the running process is prerequisite) and performs the restart action directly.

If you want to bind the hb_standby action to the case when the apache restarted 4 times in 4 cycles as well, you can use workaround such as watching the pidfile in addition to apache process like this:

--8<--
  check file with path "'/var/run/apache2.pid"
if changed timestamp for 4 cycles then exec "/usr/lib/heartbeat/ hb_standby"
--8<--


Martin




On Nov 5, 2008, at 6:23 PM, Vianney Lejeune wrote:


Please run monit in verbose mode (-v option) and check output (logfiles).

Martin

Well, it seems that if apache is crashed, there is not pidfile, so monit doesn't perform any test according to the log files. If apache is running, monit performs it.

What can I do?

Log:
======
monit[20683]: 'apache2_webserver' succeeded testing protocol [HTTP] at INET[localhost:80] via TCP
monit[20683]: monit: pidfile '/var/run/apache2.pid' does not exist
monit[22347]: 'apache2_webserver' process is not running
monit[22347]: 'apache2_webserver' trying to restart
monit[22347]: Monitoring disabled -- service apache2_webserver
monit[22347]: monit: pidfile '/var/run/apache2.pid' does not exist
monit[22347]: 'apache2_webserver' start: /etc/init.d/apache2
monit[22347]: monit: pidfile '/var/run/apache2.pid' does not exist
monit[22347]: Monitoring enabled -- service apache2_webserver
monit[22347]: monit: pidfile '/var/run/apache2.pid' does not exist
=====

Hello,

I really don't understand why it doesn't work. I tried many tutorials, read and reread the manual but I'm always unable to do something, this is a sample of my monitrc file:

=======
check process apache2_webserver with pidfile /var/run/apache2.pid
depends on mysql_DBserver, heartbeat
start program = "/etc/init.d/apache2 start"
stop program  = "/etc/init.d/apache2 stop"
if failed host 127.0.0.1 port 80 protocol http for 4 times within 4 cycles then exec "/usr/lib/heartbeat/hb_standby"
group wwwdata
mode manual
=====

I know that hb_standby works, but I'm unable to trigger anything with this configuration, I replaced " exec "/usr/lib/heartbeat/ hb_standby" " by unmonitor, timeout and so. Nothing is triggered. I'm just looking for a working configuration using the hb_standby based on a connection test, I wonder if something isn't wrong with monit on my system.

Regards,
Vianney








--
To unsubscribe:
http://lists.nongnu.org/mailman/listinfo/monit-general





reply via email to

[Prev in Thread] Current Thread [Next in Thread]