[hobbit] Hobbit client executing a script to be proactive if a problem occurs?

Chris Wopat chrisw at supranet.net
Mon Apr 14 19:00:53 CEST 2008


Henrik Stoerner wrote:
> On Fri, Apr 11, 2008 at 08:56:02AM -0500, Chris Wopat wrote:
>> Is there a cleaner way built in that will just say "if service FOO is red 
>> then on client run script ext/BAR.sh"?
> 
> There is. You use the Hobbit "query" command to probe the status, and
> then act accordingly. To use your example with the "cpu" status going
> red:
> 
>    #!/bin/sh
> 
>    CPUCOLOR=`$BB $BBDISP "query $MACHINE.cpu" | awk '{print $1}'`
>    if test "$CPUCOLOR" = "red"
>    then
>        # Kill some cpu hogging processes
>        .... whatever it takes ....
>    fi
>    exit 0
> 
> The "query" command returns the first line of the current status, and
> the first word is the current color. You probably will want to put in
> some sort of sanity check so you don't trigger this too often. Or
> perhaps just log the fact that it triggered.

Excellent, was unaware of this query feature. The script above looks 
like it would perfectly deal with my situation if I were to put it in 
cron on the client machine, which may be suitable.

Is there some way to tell the hobbit server to execute this script on 
the client, or would something in a SCRIPT line in a hobbit alert, 
likely using ssh keys, be the only way?

--Chris



More information about the Xymon mailing list