rrdtool create power.rrd --start 1184626800 --step 1 \ DS:Power:GAUGE:6000:0:60000 \ RRA:AVERAGE:0.5:1:115200 \ RRA:AVERAGE:0.5:60:1400 \ RRA:AVERAGE:0.5:240:1550 \ RRA:AVERAGE:0.5:1440:3000 \ RRA:AVERAGE:0.5:2880:4000 \ RRA:MAX:0.5:1:115200 \ RRA:MAX:0.5:60:1400 \ RRA:MAX:0.5:240:1550 \ RRA:MAX:0.5:1440:3000 \ RRA:MAX:0.5:2880:4000 \ RRA:MIN:0.5:1:115200 \ RRA:MIN:0.5:60:1400 \ RRA:MIN:0.5:240:1550 \ RRA:MIN:0.5:1440:3000 \ RRA:MIN:0.5:2880:4000 update power.rrd #!/bin/sh #if [ `wc -l >/tmp/powercount # exit #else # rm /tmp/powercount # touch /tmp/powercount #fi HOMEDIR="/var/www/localhost/htdocs/power" cd $HOMEDIR RRD="rrdtool" DB="/mnt/data/routerdev/powertest/power.rrd" COMMENT="Generated on `date "+%d %m %y %H\:%M\:%S %Z"`" IMAGE="power.png" width=1000 height=600 for time in 60m 3h 24h 48h 8days 1month 1year do PERIOD="$time" averageperiod=1 if [ "$time" == "1year" ] then averageperiod=604800 fi if [ "$time" == "1month" ] then averageperiod=120960 fi rrdtool graph `echo $PERIOD | tr ' ' '_'`_power.png -A -a PNG \ -e NOW \ -s -$time \ -t "Power use for $PERIOD" \ -w $width \ -h $height \ -v "Power (w)" \ -r \ DEF:Power=$DB:Power:AVERAGE \ VDEF:PowerMin=Power,MINIMUM \ VDEF:PowerAveVal=Power,AVERAGE \ CDEF:PowerAve=Power,$averageperiod,TREND \ COMMENT:"\t\t now avg max min"\\n \ LINE1:PowerAve"#AAAAFF:Power" \ GPRINT:Power:LAST:"%7.1lfw" \ GPRINT:Power:AVERAGE:"%7.1lfw" \ GPRINT:Power:MAX:"%7.1lfw" \ GPRINT:Power:MIN:"%7.1lfw"\\n \ HRULE:PowerMin"#999999:Minimum" \ HRULE:PowerAveVal"#6666FF:Average" \ done