Increasing quality graph resolution
-
I've been making extensive use of the connection quality monitoring graph (delay and packet loss vs. time) to keep track of persistent issues my ISP has been having. Although it's a very useful tool, I was having trouble finding a way to increase its resolution for historical data.
After a bit of digging, it looks like the timesteps used are in
/var/db/rrd/updaterrd.sh
, which in turn is generated from a hardcoded template in/etc/inc/rrd.inc
. I then came up with this to increase log resolution (usingfind
for the loop so it works in both Bourne and C derivative shells):find /var/db/rrd -name \*.rrd -exec rrdtool tune '{}' RRA#0:=120000 RRA#1:=72000 RRA#2:=18600 RRA#3:=22840 ';'
This, of course, increases database size substantially (18.6x standard).
To make this higher-resolution data viewable, I then edited
/usr/local/www/status_monitoring.php
, removing thedisabled
attribute from lines in theswitch
starting on line 828, and changing default resolution (selected
) according to my preferences: status_monitoring.zipDoes anyone foresee issues with this, beyond the increased system resources required?
-
RRD intentionally aggregates data into larger intervals as the data gets older.
The monitoring graphs are intended to provide troubleshooting information, not be a high-resolution, historical archive. For that you can query the device using something like cacti or zabbix or a plethora of others.
Setting 8 hours x 1 minute resolution is pretty comprehensive. Anything longer than 8 hours and the resolution will be reduced.