Multi-rrd graphs
list Vernon Everett
Hi all
OK, I am probably pushing the envelope here, but maybe it's possible.
Lets assume I am collecting data about some disks.
Or maybe we don't assume. I am doing it.
As data, I am collecting
% Cache hits
% Reads
% Writes
Using split NCV, I get a bunch of files.
cache,vol01.rrd
cache,vol02.rrd
cache,vol03.rrd
cache,vol04.rrd
read,vol01.rrd
read,vol02.rrd
read,vol03.rrd
read,vol04.rrd
write,vol01.rrd
write,vol02.rrd
write,vol03.rrd
write,vol04.rrd
Using the standard graph definitions, I can get all the cache values
on one graph, all the read values on another etc. etc.
Is there a way to group them by the volume name?
So I end up with a graph of cache, read and write for vol1 on one graph.
The cache, read and write for vol1 on another etc. etc.
Of course, in reality, I have far more than vol01-04, and they are not
all volXX either, so hard coding the hobbitgraph.cfg entry isn't an
option.
Possible?
Regards
Vernon.
list W.J.M. Nelis
Hello Vernon,
▸
OK, I am probably pushing the envelope here, but maybe it's possible.
Lets assume I am collecting data about some disks.
Or maybe we don't assume. I am doing it.
As data, I am collecting
% Cache hits
% Reads
% Writes
Using split NCV, I get a bunch of files.
cache,vol01.rrd
cache,vol02.rrd
cache,vol03.rrd
cache,vol04.rrd
read,vol01.rrd
read,vol02.rrd
read,vol03.rrd
read,vol04.rrd
write,vol01.rrd
write,vol02.rrd
write,vol03.rrd
write,vol04.rrd
Using the standard graph definitions, I can get all the cache values
on one graph, all the read values on another etc. etc.
Is there a way to group them by the volume name?
So I end up with a graph of cache, read and write for vol1 on one graph.
The cache, read and write for vol1 on another etc. etc.
Of course, in reality, I have far more than vol01-04, and they are not
all volXX either, so hard coding the hobbitgraph.cfg entry isn't an
option.
Possible?
In a somewhat similar case (statistics of all DHCP adress-pools) a solution was build using the following components: . A client-side script which collects the data and sends is using NCV and a naming convention. The names used in the NCV section are "<File>/<Dataset>". All variables with the same <File> end up in the same RRD. . Using parameters extra-tests and extra-script in the hobbitchannel command to divert the data stream to a script. This script will use <File> to generate the name of the RRD and update the supplied <Dataset>. . Using GRAPHS="...,test::1" to have Xymon generate the correct number of graphs. . Using a small script in the graph definition to generate the title of the graph from the RRD file name. HTH, Wim Nelis. ******************************************************************************************************* The NLR disclaimer (http://www.nlr.nl/emaildisclaimer) is valid for NLR e-mail messages. *******************************************************************************************************
list Ralph Mitchell
I don't know if there's a way to do that with Xymon configs so, until one of
our graph wizards come up with an answer, you could look into doing it the
hard(er) way... If you script the graph generation to drop graphs somewhere
in your web server's htdocs tree, you could follow up with a status report
to xymon containing links to the images. Something similar to this:
#!/bin/bash
/usr/bin/rrdtool graph /var/www/server/htdocs/graphs/volX.png \
DEF:xxx......
LINE:xxx.....
etc
/home/xymon/server/bin/bb localhost "status server.vols green `date`
<img src=......>"
Run that out of cron every few minutes. It would take a bit more work to
add the zoom functions and the ability to click through to get longer
time-span graphs, but at least you'd have something...
I've done something similar to this at work because I can't install Xymon...
:(
Ralph Mitchell
▸
On Tue, Jul 6, 2010 at 4:04 AM, Vernon Everett <user-b3f8dacb72c8@xymon.invalid>wrote:
Hi all
OK, I am probably pushing the envelope here, but maybe it's possible.
Lets assume I am collecting data about some disks.
Or maybe we don't assume. I am doing it.
As data, I am collecting
% Cache hits
% Reads
% Writes
Using split NCV, I get a bunch of files.
cache,vol01.rrd
cache,vol02.rrd
cache,vol03.rrd
cache,vol04.rrd
read,vol01.rrd
read,vol02.rrd
read,vol03.rrd
read,vol04.rrd
write,vol01.rrd
write,vol02.rrd
write,vol03.rrd
write,vol04.rrd
Using the standard graph definitions, I can get all the cache values
on one graph, all the read values on another etc. etc.
Is there a way to group them by the volume name?
So I end up with a graph of cache, read and write for vol1 on one graph.
The cache, read and write for vol1 on another etc. etc.
Of course, in reality, I have far more than vol01-04, and they are not
all volXX either, so hard coding the hobbitgraph.cfg entry isn't an
option.
Possible?
Regards
Vernon.
list Buchan Milne
▸
On Tuesday, 6 July 2010 09:04:59 Vernon Everett wrote:
Hi all
OK, I am probably pushing the envelope here, but maybe it's possible.
Lets assume I am collecting data about some disks.
Or maybe we don't assume. I am doing it.
As data, I am collecting
% Cache hits
% Reads
% Writes
Using split NCV, I get a bunch of files.
cache,vol01.rrd
cache,vol02.rrd
cache,vol03.rrd
cache,vol04.rrd
read,vol01.rrd
read,vol02.rrd
read,vol03.rrd
read,vol04.rrd
write,vol01.rrd
write,vol02.rrd
write,vol03.rrd
write,vol04.rrdIdeally, you want all the values for on instance/volume/disk in one RRD file. This may not be possible with split ncv ... maybe you should use the devmon collector instead? With devmon's diskio test for the linux-netsnmp template, I get something like this: http://staff.telkomsa.net/~bgmilne/devmon-diskio-graph-public.png
▸
?
Using the standard graph definitions, I can get all the cache values on one graph, all the read values on another etc. etc. Is there a way to group them by the volume name? So I end up with a graph of cache, read and write for vol1 on one graph. The cache, read and write for vol1 on another etc. etc. Of course, in reality, I have far more than vol01-04, and they are not all volXX either, so hard coding the hobbitgraph.cfg entry isn't an option.
See the diskio graph definition in http://devmon.svn.sf.net/viewvc/devmon/trunk/extras/devmon- graph.cfg?revision=131&view=markup But, this works with all the values for a disk in a single RRD file. Regards, Buchan
list W.J.M. Nelis
Hello Vernon,
OK, I am probably pushing the envelope here, but maybe it's possible.
Lets assume I am collecting data about some disks.
Or maybe we don't assume. I am doing it.
As data, I am collecting
% Cache hits
% Reads
% Writes
Using split NCV, I get a bunch of files.
cache,vol01.rrd
cache,vol02.rrd
cache,vol03.rrd
cache,vol04.rrd
read,vol01.rrd
read,vol02.rrd
read,vol03.rrd
read,vol04.rrd
write,vol01.rrd
write,vol02.rrd
write,vol03.rrd
write,vol04.rrd
Using the standard graph definitions, I can get all the cache values
on one graph, all the read values on another etc. etc.
Is there a way to group them by the volume name?
So I end up with a graph of cache, read and write for vol1 on one graph.
The cache, read and write for vol1 on another etc. etc.
Of course, in reality, I have far more than vol01-04, and they are not
all volXX either, so hard coding the hobbitgraph.cfg entry isn't an
option.
Possible?
In a somewhat similar case (statistics of all DHCP adress-pools) a solution was build using the following components: . A client-side script which collects the data and sends is using NCV and a naming convention. The names used in the NCV section are "<File>/<Dataset>". All variables with the same <File> end up in the same RRD. . Using parameters extra-tests and extra-script in the hobbitchannel command to divert the data stream to a script. This script will use <File> to generate the name of the RRD and update the supplied <Dataset>. . Using GRAPHS="...,test::1" to have Xymon generate the correct number of graphs. . Using a small script in the graph definition to generate the title of the graph from the RRD file name. HTH, Wim Nelis. ******************************************************************************************************* The NLR disclaimer (http://www.nlr.nl/emaildisclaimer) is valid for NLR e-mail messages. *******************************************************************************************************
list Vernon Everett
It might work, but it violates one my own fundamental rules.
- Simplicity is the ultimate sophistication.
This solution is not simple. :-)
I might have to consider it though.
See comments to Buchan.
Regards
Vernon
▸
On Tue, Jul 6, 2010 at 7:18 PM, Ralph Mitchell <user-00a5e44c48c0@xymon.invalid> wrote:I don't know if there's a way to do that with Xymon configs so, until one of our graph wizards come up with an answer, you could look into doing it the hard(er) way... If you script the graph generation to drop graphs somewhere in your web server's htdocs tree, you could follow up with a status report to xymon containing links to the images. Something similar to this: #!/bin/bash /usr/bin/rrdtool graph /var/www/server/htdocs/graphs/volX.png \ DEF:xxx...... LINE:xxx..... etc /home/xymon/server/bin/bb localhost "status server.vols green `date` <img src=......>" Run that out of cron every few minutes. It would take a bit more work to add the zoom functions and the ability to click through to get longer time-span graphs, but at least you'd have something... I've done something similar to this at work because I can't install Xymon...
:(
Ralph Mitchell
On Tue, Jul 6, 2010 at 4:04 AM, Vernon Everett <user-b3f8dacb72c8@xymon.invalid>
▸
wrote:Hi all OK, I am probably pushing the envelope here, but maybe it's possible. Lets assume I am collecting data about some disks. Or maybe we don't assume. I am doing it. As data, I am collecting % Cache hits % Reads % Writes Using split NCV, I get a bunch of files. cache,vol01.rrd cache,vol02.rrd cache,vol03.rrd cache,vol04.rrd read,vol01.rrd read,vol02.rrd read,vol03.rrd read,vol04.rrd write,vol01.rrd write,vol02.rrd write,vol03.rrd write,vol04.rrd Using the standard graph definitions, I can get all the cache values on one graph, all the read values on another etc. etc. Is there a way to group them by the volume name? So I end up with a graph of cache, read and write for vol1 on one graph. The cache, read and write for vol1 on another etc. etc. Of course, in reality, I have far more than vol01-04, and they are not all volXX either, so hard coding the hobbitgraph.cfg entry isn't an option. Possible? Regards Vernon.