Additional tests from xymon server
Hi
Thank you all for your replies. xymongrep is what I was looking for. Also, Buchan's script was very helpful.
I've managed to add the desired checks by adding a new task in $XYMONHOME/servers/etc/tasks.d/domain-checks.cfg like this: [Domain] ENVFILE $XYMONSERVERROOT/server/etc/xymonserver.cfg NEEDS xymond CMD $XYMONSERVERROOT/server/ext/domain_check.pl LOGFILE $XYMONSERVERLOGS/ext-domain_check.log INTERVAL 5m
In $XYMONSERVERROOT/server/ext/domain_check.pl I used xymongrep to filter out only the hosts with the domain tag in hosts.cfg and sent the status for each of the hostnames I've found back to xymon.
I'm a bit suprised I couldn't find documentation for such endevours more easily.
On 4/16/2012 12:25 PM, Buchan Milne wrote:
On Friday, 13 April 2012 19:10:34 Ioan Damian wrote:
Hi,
I'm trying to add a test to the xymon server. This one has to reside server-side because not it does domain checks and not all domains have an assigned IP. Also, connectivity is not a concern here. What I'm trying to do is add some domain in a subpage and check for changes in their nameserver IPs. I've written a perl script that does the job and it takes the domain name as a parameter. In practice I'm trying to replicate what xymonnet does with the various checks like dns, http, smtp, etc.
I would have something like this hosts.cfg:
page domainchecks<H3>Domain Checks<H3> <some IP> <the domain name> # noconn<my_test_name>
I did scrip this to check all domains at once but, that's not a desired behavior because I need to xymon to treat them separately and tell me for each if something changed or not according to my script.
I setup a test task in tasks.cfg like this:
[Environment] ENVFILE /var/lib/xymon/server/etc/xymonserver.cfg NEEDS xymond CMD $XYMONSERVERROOT/server/ext/env.pl LOGFILE $XYMONSERVERLOGS/ext-env.log INTERVAL 5m
I've set it up for some hosts to no avail:
<some ip> <hostname> # env
It only shows up for the xymon server, which leads me to think this is more cumbersome than I first thought. Has anyone managed to do something like this before? Please find an example attached. If I were to write this script today, I might rather use a perl module I have that handles the communication with hobbitd. This one uses 'ol' as the service name, or tag that should be in the hosts.cfg file. I haven't modified it to run in Xymon 4.3.x, the bbhostgrep, and possibly $ENV{BB} and $ENV{BBDISP} may need to be changed ...
I would recommend against using 'env' as a test name though, as some tests (e.g. Devmon templates) use 'env' for 'environmental monitoring', such as temperature, humidity etc.
Regards, Buchan
On Wed, Apr 18, 2012 at 4:42 PM, Ioan Damian <damian.ioan at gmail.com> wrote:
I'm a bit suprised I couldn't find documentation for such endevours more easily.
It's on the "Xymon Tips and Tricks" page from the Help menu in Xymon. Where would you have expected to see the documentation?
On 4/24/2012 3:50 AM, Jeremy Laidman wrote:
On Wed, Apr 18, 2012 at 4:42 PM, Ioan Damian <damian.ioan at gmail.com <mailto:damian.ioan at gmail.com>> wrote:
I'm a bit suprised I couldn't find documentation for such endevours more easily.It's on the "Xymon Tips and Tricks" page from the Help menu in Xymon. Where would you have expected to see the documentation?
Face palm...
I went like crazy through the man pages. Especially tasks.cfg and xymonserver.cfg.
participants (2)
-
damian.ioan@gmail.com
-
jlaidman@rebel-it.com.au