[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Configuring monit to call an external program (EXEC) as well as r es
Re: Configuring monit to call an external program (EXEC) as well as r estart etc
Mon, 07 Feb 2005 22:57:16 +0100
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.5) Gecko/20050105 Debian/1.7.5-1
There is one planned feature, which should do what you asked for:
Currently the workaround is possible using exec action this way
if failed <test>
then exec "/bin/bash -c '/bin/snmptrap <...>; /bin/monit restart
else if recovered then exec "/some/other/script"
As you can see, monit starts shell, which then interpretes the commands.
One of them is the execution of monit binary (aka client), which
contacts the monit daemon in turn and instructs it to restart the given
service (i.e. "loopback" trick).
The default action on error recovery is alert (unless you want to do
other action then alert, you can omit it).
There may be several other ways how to implement the workaround (as you
Tom O'Brien wrote:
In reading the mailing list archives (search for SNMP), Martin Pala
seemed to imply that it was possible to call an external program (such
as snmptrap) from monit, when a state change occurred.
I can see it is possible to call an external program through the EXEC
action; however it does not seem possible to call EXEC, and also take
built in actions such as "restart", or "timeout". Basically I want the
EXEC to replace the alert! I'm using monit 4.3 currently.
Is this a correct read of monit's capabilities?
Is there any round-about way to do what I need?
- I've tried sending alerts to a localhost address, then parse the
message to generate the alert I want; however because monit goes direct
to port 25, I cannot use it (my smtp service may be heavily loaded, and
- I've considered polling the HTTP server, but I may miss state changes.
- Are all state changes written to the monit log? I suppose I could
write a log monitor! Gack.
Thanks for a very useful tool!