Manual data entry vs. Nagios Network Analyzer

This support forum board is for support questions relating to Nagios XI, our flagship commercial network monitoring solution.
Locked
TBT
Posts: 625
Joined: Wed May 18, 2011 1:26 pm

Manual data entry vs. Nagios Network Analyzer

Post by TBT »

A User has built several Dashboards with 700+ Bandwidth graphs. Reports are generated based on these dashboards and then sent to some lucky individuals that have been manually entering the Average/Max In/Out values into a spreadsheet to calculate trends on a weekly report.

To make matters worse. Because the graphs are built under a specific user account, all the maintenance on these dashboards can only be done by the one user that created them.


I'm pretty the Nagios Network Analyzer product can alleviate all this manual work they're doing, correct?

Also, is Nagios Network Analyzer compatible with XI 5.6.7?
Nagios XI 2024R2.2.1 (8 Servers)
Nagios Fusion 2024R1.0.2
ssax
Dreams In Code
Posts: 7682
Joined: Wed Feb 11, 2015 12:54 pm

Re: Manual data entry vs. Nagios Network Analyzer

Post by ssax »

NNA won't show the individual port bandwidth so it wouldn't likely meet your needs in that regard.

I have previously submitted a request for development to add some form of import/export functionality for the dashboards but currently they are tied to the user as you've found.
TBT
Posts: 625
Joined: Wed May 18, 2011 1:26 pm

Re: Manual data entry vs. Nagios Network Analyzer

Post by TBT »

That's unfortunate.

So lets investigate scripting this to a CSV. We need to on a weekly basis, gather the Daily Average/Max and In/Out values from all Services.

Perhaps you can assist with the Database query?
Nagios XI 2024R2.2.1 (8 Servers)
Nagios Fusion 2024R1.0.2
ssax
Dreams In Code
Posts: 7682
Joined: Wed Feb 11, 2015 12:54 pm

Re: Manual data entry vs. Nagios Network Analyzer

Post by ssax »

There isn't an easy way to do this.

The data is stored in the RRDs in /usr/local/nagios/share/perfdata, it is not queryable through the DB.

You would need to essentially need to script this out against every bandwidth RRD file:

Code: Select all

/usr/bin/rrdtool fetch /usr/local/nagios/share/perfdata/YOURHOSTNAME/YOURBANDWIDTHSERVICE.rrd AVERAGE -s -7d | grep -v nan
Then perform the calculations on the data returned to AVERAGE and MAX all of the values (which is how XI does it).
TBT
Posts: 625
Joined: Wed May 18, 2011 1:26 pm

Re: Manual data entry vs. Nagios Network Analyzer

Post by TBT »

We've done some experimenting which has raised more questions. No rush on reply as we'll be out-of-office next week, but perhaps you can answer the following....

1. How do I use the information contained within the file to calculate a 7 day average (or max/min Consolidation Functions)?

2. Which is the download/upload column? (the associated .XML file lists column 1 as 'in' and column 2 as 'out')

3. How do I extend that to 52 week average?

4. How do I calculate the percent utilization?
Nagios XI 2024R2.2.1 (8 Servers)
Nagios Fusion 2024R1.0.2
ssax
Dreams In Code
Posts: 7682
Joined: Wed Feb 11, 2015 12:54 pm

Re: Manual data entry vs. Nagios Network Analyzer

Post by ssax »

1., 3., 4. I found this:

https://exchange.nagios.org/directory/P ... pl/details

Put that in check_rrd.pl in /usr/local/nagios/libexec/then run these commands:

Code: Select all

chown apache.nagios /usr/local/nagios/libexec/check_rrd.pl
chmod ug+x /usr/local/nagios/libexec/check_rrd.pl
Then test:

Input (ds1):

Code: Select all

/usr/local/nagios/libexec/check_rrd.pl -R /usr/local/nagios/share/perfdata/XXXX/YYYY.rrd --ds 1 --compute AVERAGE --start -7d
/usr/local/nagios/libexec/check_rrd.pl -R /usr/local/nagios/share/perfdata/XXXX/YYYY.rrd --ds 1 --compute AVERAGE --start -52w
/usr/local/nagios/libexec/check_rrd.pl -R /usr/local/nagios/share/perfdata/XXXX/YYYY.rrd --ds 1 --compute MIN --start -7d
/usr/local/nagios/libexec/check_rrd.pl -R /usr/local/nagios/share/perfdata/XXXX/YYYY.rrd --ds 1 --compute MIN --start -52w
/usr/local/nagios/libexec/check_rrd.pl -R /usr/local/nagios/share/perfdata/XXXX/YYYY.rrd --ds 1 --compute MAX --start -7d
/usr/local/nagios/libexec/check_rrd.pl -R /usr/local/nagios/share/perfdata/XXXX/YYYY.rrd --ds 1 --compute MAX --start -52w
/usr/local/nagios/libexec/check_rrd.pl -R /usr/local/nagios/share/perfdata/XXXX/YYYY.rrd --ds 1 --compute PERCENT --start -7d
/usr/local/nagios/libexec/check_rrd.pl -R /usr/local/nagios/share/perfdata/XXXX/YYYY.rrd --ds 1 --compute PERCENT --start -52w
Output (ds2):

Code: Select all

/usr/local/nagios/libexec/check_rrd.pl -R /usr/local/nagios/share/perfdata/XXXX/YYYY.rrd --ds 2 --compute AVERAGE --start -7d
/usr/local/nagios/libexec/check_rrd.pl -R /usr/local/nagios/share/perfdata/XXXX/YYYY.rrd --ds 2 --compute AVERAGE --start -52w
/usr/local/nagios/libexec/check_rrd.pl -R /usr/local/nagios/share/perfdata/XXXX/YYYY.rrd --ds 2 --compute MIN --start -7d
/usr/local/nagios/libexec/check_rrd.pl -R /usr/local/nagios/share/perfdata/XXXX/YYYY.rrd --ds 2 --compute MIN --start -52w
/usr/local/nagios/libexec/check_rrd.pl -R /usr/local/nagios/share/perfdata/XXXX/YYYY.rrd --ds 2 --compute MAX --start -7d
/usr/local/nagios/libexec/check_rrd.pl -R /usr/local/nagios/share/perfdata/XXXX/YYYY.rrd --ds 2 --compute MAX --start -52w
/usr/local/nagios/libexec/check_rrd.pl -R /usr/local/nagios/share/perfdata/XXXX/YYYY.rrd --ds 2 --compute PERCENT --start -7d
/usr/local/nagios/libexec/check_rrd.pl -R /usr/local/nagios/share/perfdata/XXXX/YYYY.rrd --ds 2 --compute PERCENT --start -52w
2. They follow the order of the metrics that are returned by the plugin, for this it would be:

Code: Select all

epoch: Input Output
Locked