man rrdgraph_examples (Commandes) - Examples for rrdtool graph

NAME

rrdgraph_examples - Examples for rrdtool graph

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\n"
    LINE1:ds0b#00CCFF:"resolution 1800 seconds per interval\n"
    LINE1:ds0c#FF00FF:"resolution 7200 seconds per interval\n"

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,8,*
    VDEF:ds0avg=ds0,AVERAGE,8,*
    VDEF:ds0min=ds0,MINIMUM,8,*
    VDEF:ds0pct=95,ds0,PERCENTILE,8,*
    VDEF:ds1max=ds1,MAXIMUM,8,*
    VDEF:ds1avg=ds1,AVERAGE,8,*
    VDEF:ds1min=ds1,MINIMUM,8,*
    VDEF:ds1pct=95,ds1,PERCENTILE,8,*

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    "

Note: some lines contains the new-line character \n

    COMMENT:"95th percentile\n"
    AREA:ds0bits#00C000:"Inbound "
    GPRINT:ds0max:"%6.2lf %Sbps"
    GPRINT:ds0avg:"%6.2lf %Sbps"
    GPRINT:ds0min:"%6.2lf %Sbps"
    GPRINT:ds0pct:"%6.2lf %Sbps\n"
    LINE1:ds1bits#0000FF:"Outbound"
    GPRINT:ds1max:"%6.2lf %Sbps"
    GPRINT:ds1avg:"%6.2lf %Sbps"
    GPRINT:ds1min:"%6.2lf %Sbps"
    GPRINT:ds1pct:"%6.2lf %Sbps\n"

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 200101010000 --end start+31d
    January 2001:    --start 200101010000 --end 200102010000
    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 ?DEF 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 <oetiker@ee.ethz.ch>

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