Automatic graph based on RRD

By Nico Bagari, on 14-08-2008

Favoured : 50

Published in : Documentation, Architecture documentation

Copyright (c) 2008 Nico Bagari & Thomas Buffagni
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.2
or any later version published by the Free Software Foundation;
with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
A copy of the license is included in the section entitled "GNU
Free Documentation License".

How automatic graph based on RRD works ?

When nagios module parse the nagios line and found some performance data, store it on database.

Periodically, if you have enabled a graph for a service, graph module examine performance data and create some statistics for every service data. The statistics are:

- number of checks

- check interval (average step)

When nagios graph gathered sufficient number of performance data value (the default is 5 value), create a graph definition  for every graph type (hourly, daily, weekly, monthly, yearly) and schedule when refresh it. If two or more performance data have different base UOM then graph module generate two or more graph definition for the same service and graph type.

The engine that plot graphs is based on a RRD  (Round Robin Database) so it generate an RRD definition on Brainy's database and a RRD archive for every host, service and base id. The directory where RRD archives are stored is $BRAINY_HOME/data/rrd/

Periodially, Graph Module refresh the graph image (created as png image) and store it in $BRAINY_HOME/data/graphs/<time interval>, where <time interval> is hourly, daily,monthly, weekly or yearly. The refresh interval is function of graph type and you can configure it in brainy.properties. In this file you can also personalize a lot of default properties used on graph generation like:

 - wich graphs type are available

- dimensions of graph images

- title prefix printed on graph image

- where store graph images

Example:

The service that you want graph is the PING service and this is the nagios line:

1218704170||Host_A||OK||4.075||PING||PING OK - Packet loss = 0%, RTA = 12.09 ms||

Nagios module found this performance data and store it.


name base UOM UOM value
losspct% % 0
rtamSec Sec 12.09

When graph module gathered five values for every performance data, create two graph definitions:

  • graph for losspct
  • graph for rta

Graph module detect that performance data losspct and rta have different base UOM so it generate two different graphs.

For any suggestion, please contact us.

Thank you.

 

Last update : 14-08-2008

   
Favoured
Print
Send to friend
Related articles

Users' Comments  RSS feed comment
 

Average user rating

 


Add your comment
Name
E-mail
Title  
Comment
 
Available characters: 600
   Notify me of follow-up comments
  Mathguard security question:
T           IOB      
E 2    9    6 H   EPA
IIC   LAW   EKF      
  E    S    E D   1YX
  3         7JC      
   
   

No comment posted



mXcomment 1.0.8 © 2007-2010 - visualclinic.fr
License Creative Commons - Some rights reserved
Automatic graph based on RRD
User Rating: / 0
PoorBest