rrdgraph_examples - Examples for rrdtool graph
rrdtool graph /home/httpd/html/test.png --img-format PNG
followed by any of the examples below
For your convenience some of the commands are explained here by using detailed examples. They are not always cut-and-paste ready because comments are intermixed with the examples.
--end now --start end-120000s --width 400 DEF:ds0a=/home/rrdtool/data/router1.rrd:ds0:AVERAGE DEF:ds0b=/home/rrdtool/data/router1.rrd:ds0:AVERAGE:step=1800 DEF:ds0c=/home/rrdtool/data/router1.rrd:ds0:AVERAGE:step=7200 LINE1:ds0a#0000FF:"default resolution\l" LINE1:ds0b#00CCFF:"resolution 1800 seconds per interval\l" LINE1:ds0c#FF00FF:"resolution 7200 seconds per interval\l"
DEF:ds0=/home/rrdtool/data/router1.rrd:ds0:AVERAGE DEF:ds1=/home/rrdtool/data/router1.rrd:ds1:AVERAGE VDEF:ds0max=ds0,MAXIMUM VDEF:ds0avg=ds0,AVERAGE VDEF:ds0min=ds0,MINIMUM VDEF:ds0pct=ds0,95,PERCENT VDEF:ds1max=ds1,MAXIMUM VDEF:ds1avg=ds1,AVERAGE VDEF:ds1min=ds1,MINIMUM VDEF:ds1pct=ds1,95,PERCENT
Note: consolidation occurs here.
CDEF:ds0bits=ds0,8,* CDEF:ds1bits=ds1,8,*
Note: 10 spaces to move text to the right
COMMENT:" "
Note: the column titles have to be as wide as the columns
COMMENT:"Maximum " COMMENT:"Average " COMMENT:"Minimum "
COMMENT:"95th percentile\l" AREA:ds0bits#00C000:"Inbound " GPRINT:ds0max:"%6.2lf %Sbps" GPRINT:ds0avg:"%6.2lf %Sbps" GPRINT:ds0min:"%6.2lf %Sbps" GPRINT:ds0pct:"%6.2lf %Sbps\l" LINE1:ds1bits#0000FF:"Outbound" GPRINT:ds1max:"%6.2lf %Sbps" GPRINT:ds1avg:"%6.2lf %Sbps" GPRINT:ds1min:"%6.2lf %Sbps" GPRINT:ds1pct:"%6.2lf %Sbps\l"
Depending on your needs you can do this in two ways:
DEF:mydata=my.rrd:ds:AVERAGE
Note: this will also influence any other command that uses ``data''
CDEF:data=mydata,100,+ LINE1:data#FF0000:"Data with offset"Graph the original data, with an offset
DEF:mydata=my.rrd:ds:AVERAGE
Note: no color in the first line so it is not visible
LINE1:100
Note: the second line gets stacked on top of the first one
LINE1:data#FF0000:"Data with offset":STACK
Last four weeks: --start end-4w --end 00:00 January 2001: --start 20010101 --end start+31d January 2001: --start 20010101 --end 20010201 Last hour: --start end-1h Last 24 hours: <nothing at all> Yesterday: --end 00:00
--end now --start end-1w DEF:thisweek=router.rrd:ds0:AVERAGE DEF:lastweek=router.rrd:ds0:AVERAGE:end=now-1w:start=end-1w
Shift the data forward by one week (604800 seconds)
SHIFT:lastweek:604800 [ more of the usual VDEF and CDEF stuff if you like ] AREA:lastweek#0000FF:Last\ week LINE1:thisweek#FF0000:This\ week
the rrdgraph manpage gives an overview of how rrdtool graph works. the rrdgraph_data manpage describes DEF,CDEF and VDEF in detail. the rrdgraph_rpn manpage describes the RPN language used in the xDEF statements. the rrdgraph_graph manpage page describes all the graph and print functions.
Make sure to read the rrdgraph_examples manpage for tips&tricks.
Program by Tobias Oetiker <tobi@oetiker.ch>
This manual page by Alex van den Bogaerdt <alex@ergens.op.het.net>