Xymon Mailing List Archive search

NCV RRD handler that will create multiple rrd files from a single test

8 messages in this thread

list Tom Georgoulias · Thu, 14 Jun 2007 13:38:23 -0400 ·
This topic has come up on the list a couple of times, but I don't think I've ever heard a definitive answer.

I really need the ability for the NCV module (or a different module) to create multiple rrd files using data from a single test, just like the way the do_disk rrd handler works.  Over the last month I have been working to get a lot of my networking equipment monitored and graphed using devmon, and there are many situations (such as concurrent sessions per virtual server on my load balancer) where the addition of a new monitored parameter (i.e adding a new virtual server) to the exisiting test will cause havoc for the ncv rrd handler.  Is there any chance that this kind of functionality will make it into Hobbit?  It'd be cool to have an NCV module that can handle both cases, or an additional NCV module to produce multiple rrd files and works alongside the traditional one.

Tom
-- 
Tom Georgoulias
Systems Engineer
McClatchy Interactive
user-6a0b8b0f0ae1@xymon.invalid
list Stef Coene · Fri, 15 Jun 2007 08:28:23 +0200 ·
quoted from Tom Georgoulias
On Thursday 14 June 2007, Tom Georgoulias wrote:
This topic has come up on the list a couple of times, but I don't think
I've ever heard a definitive answer.

I really need the ability for the NCV module (or a different module) to
create multiple rrd files using data from a single test, just like the
way the do_disk rrd handler works.  Over the last month I have been
working to get a lot of my networking equipment monitored and graphed
using devmon, and there are many situations (such as concurrent sessions
per virtual server on my load balancer) where the addition of a new
monitored parameter (i.e adding a new virtual server) to the exisiting
test will cause havoc for the ncv rrd handler.  Is there any chance that
this kind of functionality will make it into Hobbit?  It'd be cool to
have an NCV module that can handle both cases, or an additional NCV
module to produce multiple rrd files and works alongside the traditional
one.
Henrik created a patch for me so you can send "trends" to hobbit.  From the 
patch:
+/*
+ * This module was inspired by a mail from Stef Coene:
+ *
+ * Date: Wed, 17 Jan 2007 14:04:29 +0100
+ * From: Stef Coene
+ * Subject: Re: [hobbit] hobbit monitoring
+ *
+ * On Wednesday 17 January 2007 10:38, Stef Coene wrote:
+ * > Same for trending, hobbit is not powerfull enough for our needs.  And we
+ * > don't have the C knowledge to change hobbit.  One of the problems is 
that
+ * > there is 1 rrd file / check.  But we have checks where the number on 1 
page
+ * > we want to graph can change over time.
+ * Just wondering, how hard would it be to create an extra channel for 
trending?
+ * So you can use the bb client to send "numbers" to the hobbit server 
together
+ * with some extra control information.
+ *
+ * bb <bb server> trends <server name>
+ * <rrd file name> <ds name> <number> <options>
+ *
+ */
• +/*
+ * To use this, send a "data" message to hobbit like this:
+ *
+ *    data $MACHINE.trends
+ *    [filename.rrd]
+ *        DS-definition1 VALUE2
+ *        DS-definition2 VALUE2
+ *
+ * E.g. to create/update a custom RRD file "weather.rrd" with two
+ * GAUGE datasets "temp" and "wind", with current values "21" and
+ * "8" respectively, send this message:
+ *
+ *    [weather.rrd]
+ *    DS:temp:GAUGE:600:0:U 21
+ *    DS:wind:GAUGE:600:0:U 8
+ */

So you send a trends message to hobbit and a rrd file is created. 


Stef
list Tom Georgoulias · Fri, 15 Jun 2007 10:25:23 -0400 ·
quoted from Tom Georgoulias
On Thursday 14 June 2007, Tom Georgoulias wrote:
I really need the ability for the NCV module (or a different module) to
create multiple rrd files using data from a single test, just like the
way the do_disk rrd handler works.
Stef Coene wrote:
Henrik created a patch for me so you can send "trends" to hobbit.
I was able to get the functionality I need by using the split-ncv2.patch Charles Goyard sent to the list on 3/29.07.  Thanks Charles!

I must admit that I was/am a little concerned about using it because the patch hasn't been merged into Hobbit, but I really needed its capabilities and decided to give it a chance.  I'm not a C programmer, but from what I can tell the patch adds the functionality I need w/o impacting the default NCV module and that was reassuring to me.

The only outstanding issue I have with the patch is that I cannot I find a way to limit the # number of lines/graph, so on one of my load balancers I have 12 lines on the same graph.  Using "variablename::5" in   GRAPHS in hobbitserver.cfg doesn't do the trick, but that isn't enough of a drawback to stop using the patch.

Tom
-- 
Tom Georgoulias
Systems Engineer
McClatchy Interactive
user-6a0b8b0f0ae1@xymon.invalid
list Matthew Epp · Mon, 18 Jun 2007 16:59:10 -0400 ·
Is it possible to send a status line to Hobbit from an external source like devmon, with the proper DS field and a value for something like percent of used memory, and have it create the rrd files and graphs?

I've tried using one of the existing rrd files as an example, sending various status lines using devmon, with no other text in the message, such as:
realmempct : 50
or
real : 50
or
memory.real : 50

But none of them appear to work.
list Greg L Hubbard · Mon, 18 Jun 2007 16:07:08 -0500 ·
Yes.

The devil is in the details!

You need to send your status message with a format that will either work
with the ncv support in Hobbit, or that you can handle yourself in a
"catcher" script that you add to the status and data channels.

This process is pretty well documented.

And I believe that there are folks who have done this very thing for
devmon, but I have not seen the code -- I would like a copy of it
myself.

GLH 
quoted from Matthew Epp

-----Original Message-----
From: Matthew Epp [mailto:user-c07bdcff406c@xymon.invalid] 
Sent: Monday, June 18, 2007 3:59 PM
To: user-ae9b8668bcde@xymon.invalid
Subject: [hobbit] Sending RRD data via devmon to existing columns

Is it possible to send a status line to Hobbit from an external source
like devmon, with the proper DS field and a value for something like
percent of used memory, and have it create the rrd files and graphs?

I've tried using one of the existing rrd files as an example, sending
various status lines using devmon, with no other text in the message,
such as:
realmempct : 50
or
real : 50
or
memory.real : 50

But none of them appear to work.
list Matthew Epp · Mon, 18 Jun 2007 18:11:56 -0400 ·
quoted from Greg L Hubbard
Hubbard, Greg L wrote:
Yes.

The devil is in the details!

You need to send your status message with a format that will either work
with the ncv support in Hobbit, or that you can handle yourself in a
"catcher" script that you add to the status and data channels.

This process is pretty well documented.

And I believe that there are folks who have done this very thing for
devmon, but I have not seen the code -- I would like a copy of it
myself.
D'oh, the answer was right in front of me. I forgot that the old Big Brother had a bb-memory.sh script that it used to generate that data, so all I had to do was replicate it, since Hobbit has that nice backwards compatibility built into it for the old clients. Just make your devmon messages file look like:
         Memory          Used            Total   Percentage
{percMemUsed.color}     Physical        {megMemUsed}M {megMemTotal}M  {percMemUsed}%

And a transforms file like:
MemTotal        : MATH  : {MemUsed} + {MemAvail}
xpercMemUsed    : MATH  : ({MemUsed} / {MemTotal}) x 100
percMemUsed     : REGSUB : {xpercMemUsed} /(.*)\..*/$1/
megMemUsed        : MATH  : {MemUsed} / 1024000
megMemTotal       : MATH  : {MemTotal} / 1024000
list Kenneth Langford · Thu, 21 Jun 2007 11:18:44 -0400 ·
All,

I am a long time big brother and hobbit user.  I have been slowly moving
all my clients over to be hobbit clients rather than running big
brother. I have also been adding new clients as well to my hobbit server
which is running 4.2.0 with the latest all-in-one patch. I just upgraded
it about a month ago.

I guess the problem that I have is that my users have gotten use to
seeing a netstat and vmstat column for each client because I am running
the netstat-bf and vmstat-bf bottom feeder scripts with my big brother
clients.  The new clients that I have installed that have the hobbit
client do not have these columns. 8-(  I do know that the data is being
graph and displayed in trends column.  Is there a way to get this data
to show up as a separate column like I had with the big brother client
so my users don't get confused????


Ken,
list Henrik Størner · Thu, 21 Jun 2007 22:15:48 +0200 ·
quoted from Kenneth Langford
On Thu, Jun 21, 2007 at 11:18:44AM -0400, Langford, Kenneth wrote:
I guess the problem that I have is that my users have gotten use to
seeing a netstat and vmstat column [...] Is there a way to get this data
to show up as a separate column like I had with the big brother client
so my users don't get confused????
Not directly. You could hack up a script to generate a netstat column; 
something like

    #!/bin/sh

    cd $BBVAR/rrd
    for H in */netstat.rrd
    do
       HOSTNAME=`echo $H | cut -d/ -f1`
       $BB $BBDISP "status+25h $HOSTNAME.netstat green
       
       <a href=\"$CGIBINURL/bb-hostsvc.sh?CLIENT=$HOSTNAME&section=netstat\">Current data</a>
       "
    done

    exit 0

and run this as a server-side extension from hobbitlaunch.cfg
once a day (set "INTERVAL 24h"). It should pick up the netstat graph
automatically, since the column- and graph-names match.

The link inside the status message is for easy access to the current
data.
 
A vmstat column can be done in the same way.


Regards,
Henrik