rrdgraph_examples

SYNOPSIS

rrdtool graph /home/httpd/html/test.png --img-format PNG

followed by any of the examples below

DESCRIPTION

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.

EXAMPLES

Data with multiple resolutions

    --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"

Nicely formatted legend section

    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"

Offsetting a line on the y-axis

Depending on your needs you can do this in two ways:

  • Offset the data, then graph this
        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
    

Time ranges

    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

Viewing the current and previous week together

    --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

SEE ALSO

rrdgraph gives an overview of how rrdtool graph works. rrdgraph_data describes DEF,CDEF and VDEF in detail. rrdgraph_rpn describes the RPN language used in the xDEF statements. rrdgraph_graph page describes all the graph and print functions.

Make sure to read rrdgraph_examples for tips&tricks.

AUTHOR

Program by Tobias Oetiker <tobi@oetiker.ch>

This manual page by Alex van den Bogaerdt <alex@ergens.op.het.net>


NOTE: The content of this website is accessible with any browser. The graphical design though relies completely on CSS2 styles. If you see this text, this means that your browser does not support CSS2. Consider upgrading to a standard conformant browser like Mozilla Firefox or Opera but also Apple's Safari or KDE's Konqueror for example. It may also be that you are looking at a mirror page which did not copy the CSS for this page. Or if some pictu res are missing, then the mirror may not have picked up the contents of the inc directory.