#!/bin/bash CONFIGPATH=$(/path/to/config) while [ true ] do . ${CONFIGPATH}/rrd_config if [ ! -d $GRAPHDIR ]; then mkdir -p $GRAPHDIR fi cd $RRDDIR for i in ${INTERFACES[@]} do $RRDTOOL graph $GRAPHDIR${i}_day.png \ -h 120 -w 550 -a PNG \ --start end-8h --end now \ --font DEFAULT:7: \ --title "$i Network Throughput" \ --watermark "`date`" \ --vertical-label "bytes/sec" \ --logarithmic \ --units=si \ --x-grid MINUTE:10:HOUR:1:MINUTE:120:0:%R \ --alt-y-grid --rigid \ DEF:RXBytes=${i}_day.rrd:RXBytes:AVERAGE \ DEF:TXBytes=${i}_day.rrd:TXBytes:AVERAGE \ LINE2:RXBytes#3ADF00:RX \ GPRINT:RXBytes:LAST:"Cur\: %5.2lf %s" \ GPRINT:RXBytes:AVERAGE:"Avg\: %5.2lf %S" \ GPRINT:RXBytes:MAX:"Max\: %5.2lf %S" \ GPRINT:RXBytes:MIN:"Min\: %5.2lf %SBps\n" \ LINE2:TXBytes#045FB4:TX \ GPRINT:TXBytes:LAST:"Cur\: %5.1lf %s" \ GPRINT:TXBytes:AVERAGE:"Avg\: %5.1lf %S" \ GPRINT:TXBytes:MAX:"Max\: %5.1lf %S" \ GPRINT:TXBytes:MIN:"Min\: %5.1lf %SBps\n" \ HRULE:0#000000 done for i in ${DISKS[@]} do $RRDTOOL graph $GRAPHDIR${i}.png \ -h 120 -w 550 -a PNG \ --start end-8h --end now \ --font DEFAULT:7: \ --title "${i} Data Read/Written" \ --watermark "`date`" \ --vertical-label "bytes/sec" \ --logarithmic \ --units=si \ --x-grid MINUTE:10:HOUR:1:MINUTE:120:0:%R \ --alt-y-grid --rigid \ DEF:reads=${i}.rrd:reads:AVERAGE \ DEF:writes=${i}.rrd:writes:AVERAGE \ LINE2:reads#3ADF00:Read \ GPRINT:reads:LAST:"Cur\: %5.2lf %s" \ GPRINT:reads:AVERAGE:"Avg\: %5.2lf %S" \ GPRINT:reads:MAX:"Max\: %5.2lf %S" \ GPRINT:reads:MIN:"Min\: %5.2lf %SBps\n" \ LINE2:writes#045FB4:Written \ GPRINT:writes:LAST:"Cur\: %5.1lf %s" \ GPRINT:writes:AVERAGE:"Avg\: %5.1lf %S" \ GPRINT:writes:MAX:"Max\: %5.1lf %S" \ GPRINT:writes:MIN:"Min\: %5.1lf %SBps\n" \ HRULE:0#000000 done $RRDTOOL graph $GRAPHDIR/loadavg.png \ -h 120 -w 550 -a PNG \ --start end-8h --end now \ --font DEFAULT:7: \ --title "Load Average" \ --watermark "`uptime`" \ --vertical-label "Load Average" \ --x-grid MINUTE:10:HOUR:1:MINUTE:120:0:%R \ --upper-limit 2.00 \ --lower-limit 0.00 \ DEF:one=loadavg.rrd:one:AVERAGE \ DEF:five=loadavg.rrd:five:AVERAGE \ DEF:fifteen=loadavg.rrd:fifteen:AVERAGE \ LINE:fifteen#FF0000:"1 Min\:" \ GPRINT:fifteen:LAST:"Cur\: %5.2lf" \ GPRINT:fifteen:AVERAGE:"Avg\: %5.2lf" \ GPRINT:fifteen:MIN:"Min\: %5.2lf" \ GPRINT:fifteen:MAX:"Max\: %5.2lf\n" \ LINE:five#0000FF:"5 Min\:" \ GPRINT:five:LAST:"Cur\: %5.2lf" \ GPRINT:five:AVERAGE:"Avg\: %5.2lf" \ GPRINT:five:MIN:"Min\: %5.2lf" \ GPRINT:five:MAX:"Max\: %5.2lf\n" \ AREA:one#00FF0080:"15 Min\:" \ GPRINT:one:LAST:"Cur\: %5.2lf" \ GPRINT:one:AVERAGE:"Avg\: %5.2lf" \ GPRINT:one:MIN:"Min\: %5.2lf" \ GPRINT:one:MAX:"Max\: %5.2lf\n" \