« Jail Chroot and Gentoo | Main | Force reset on TSOP - ECM IRD BEV »

RRD Tool - System Load Stats

This is how I do it. I don't store the 1-min avg since I only do the update every 5 minutes and it wouldn't really make much sense to do so. Also, I'm not (currently) using SNMP to get the value, but it should be fairly easy to modify to use SNMP. *Create*
rrdtool create /var/db/rrd/loadavg.rrd \
  DS:5min:GAUGE:600:U:U   \
  DS:15min:GAUGE:600:U:U  \
  RRA:AVERAGE:0.5:1:576   \
  RRA:AVERAGE:0.5:6:672   \
  RRA:AVERAGE:0.5:24:744  \
  RRA:AVERAGE:0.5:288:732 \
  RRA:MAX:0.5:1:576       \
  RRA:MAX:0.5:6:672       \
  RRA:MAX:0.5:24:744      \
  RRA:MAX:0.5:288:732
*Update*
#!/usr/local/bin/bash
PATH=/bin:/usr/bin:/usr/local/bin

echo $(uptime | sed -e 's/^.*load average.*: //' -e 's/ //g' | \
awk -F, "{ printf(\"update /var/db/rrd/loadavg.rrd N:%f:%f\", \$2, \$3)}")
| rrdtool -
*Graph*
#!/usr/local/bin/bash
PATH=/bin:/usr/bin:/usr/local/bin

tstamp=`date`
rrdtool graph /var/www/localhost/stats/loadavg-day.png \
  --start now-1day \
  --vertical-label "Load averages" \
  --title "Load averages for the past day" \
  --width 600 \
  --height 200 \
  --alt-autoscale-max \
  --lower-limit 0 \
  DEF:5minavg=/var/db/rrd/loadavg.rrd:5min:AVERAGE \
  AREA:5minavg#0000dd:"5-min load avgs" \
  GPRINT:5minavg:AVERAGE:"Avg\:%3.2lf" \
  GPRINT:5minavg:MAX:"Max\:%3.2lf\n" \
  COMMENT:"$tstamp\r"
see also: http://martybugs.net/linux/rrdtool/traffic.cgi