[Top][All Lists]

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

Re: [monit] Starting monit from rc script

From: Martin Pala
Subject: Re: [monit] Starting monit from rc script
Date: Wed, 21 Jan 2009 21:24:08 +0100

The suggestion won't help ... the start race condition will be still present, monit upgrade is suggested.

On Jan 21, 2009, at 9:15 PM, Gilad Benjamini wrote:

My monit-controlled services are currently not started from rc.d scripts,
but only from monit.

Given what you say, and given that I can't switch a monit version at the
moment, would my suggestion work ?
i.e. /etc/init.d/monit with:
  rm -f $STATE_FILE
  monit -c $CONFIG_FILE -s $STATE_FILE

  monit stop all
  monit quit

-----Original Message-----
From: address@hidden
[mailto:address@hidden On
Behalf Of Martin Pala
Sent: Wednesday, January 21, 2009 12:06 PM
To: This is the general mailing list for monit
Subject: Re: [monit] Starting monit from rc script

You can disable starting of services from by init in given run levels
and let monit start them.

By default the monitoring mode is automatic which will enable
monitoring of all service by default and if the service is not
running, it will start it. The "start all" command is thus not
necessary unless you have some services in manual monitoring mode.

There are important fixes in upcoming monit-5.0 (you can get beta here:

It fixes the described race condition where monit tried to start the
service but before the start was finished, the monitoring thread
detected that the service is not running and tried to restart it (in
parallel to pending start action).


On Jan 21, 2009, at 8:47 PM, Gilad Benjamini wrote:

I am trying to find the right way to start monit on my system.
My requirements are simple: start all services at boot time, stop
all of
them when shutting down.
Using monit 4.10.1

The documentation recommends running monit from init. I find this
problematic as it lacks the flexibility of /etc/rc.d scripts to
the order of execution. I can choose to run monit before or after
scripts, but nowhere in between.
Is there any way around it ?

Assuming there isn't, I have a few issues with my /etc/init.d/monit

The FAQ includes a comment (suggested by myself...) to "start all"
as part
of the init script.
Should this be called before or after starting the monit daemon ?
I tried both combination. In both I seem to run into situations
where, by
the time the second command runs, services haven't completed their
and the second command tries to restart the service.
I tried this with both "start all" and "monitor all", with similar

What's the clean solution ?
Perhaps to remove the state file and then start the daemon ? Will
that do it
? When monit starts, in the lack of a state file, does it assume
that all
services are monitored and should be started ?

Thanks in advance

To unsubscribe:

To unsubscribe:

To unsubscribe:

reply via email to

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