Code

Initial revision
[rrdtool-all.git] / website / tutorial / rrdtutorial.ps
diff --git a/website/tutorial/rrdtutorial.ps b/website/tutorial/rrdtutorial.ps
new file mode 100644 (file)
index 0000000..041fcee
--- /dev/null
@@ -0,0 +1,1717 @@
+%!PS-Adobe-3.0
+%%Creator: groff version 1.11
+%%CreationDate: Wed Oct 27 07:32:11 1999
+%%DocumentNeededResources: font Times-Roman
+%%+ font Times-Bold
+%%+ font Symbol
+%%+ font Courier
+%%DocumentSuppliedResources: procset grops 1.11 0
+%%Pages: 17
+%%PageOrder: Ascend
+%%Orientation: Portrait
+%%EndComments
+%%BeginProlog
+%%BeginResource: procset grops 1.11 0
+/setpacking where{
+pop
+currentpacking
+true setpacking
+}if
+/grops 120 dict dup begin
+/SC 32 def
+/A/show load def
+/B{0 SC 3 -1 roll widthshow}bind def
+/C{0 exch ashow}bind def
+/D{0 exch 0 SC 5 2 roll awidthshow}bind def
+/E{0 rmoveto show}bind def
+/F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def
+/G{0 rmoveto 0 exch ashow}bind def
+/H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
+/I{0 exch rmoveto show}bind def
+/J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def
+/K{0 exch rmoveto 0 exch ashow}bind def
+/L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
+/M{rmoveto show}bind def
+/N{rmoveto 0 SC 3 -1 roll widthshow}bind def
+/O{rmoveto 0 exch ashow}bind def
+/P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
+/Q{moveto show}bind def
+/R{moveto 0 SC 3 -1 roll widthshow}bind def
+/S{moveto 0 exch ashow}bind def
+/T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def
+/SF{
+findfont exch
+[exch dup 0 exch 0 exch neg 0 0]makefont
+dup setfont
+[exch/setfont cvx]cvx bind def
+}bind def
+/MF{
+findfont
+[5 2 roll
+0 3 1 roll
+neg 0 0]makefont
+dup setfont
+[exch/setfont cvx]cvx bind def
+}bind def
+/level0 0 def
+/RES 0 def
+/PL 0 def
+/LS 0 def
+/MANUAL{
+statusdict begin/manualfeed true store end
+}bind def
+/PLG{
+gsave newpath clippath pathbbox grestore
+exch pop add exch pop
+}bind def
+/BP{
+/level0 save def
+1 setlinecap
+1 setlinejoin
+72 RES div dup scale
+LS{
+90 rotate
+}{
+0 PL translate
+}ifelse
+1 -1 scale
+}bind def
+/EP{
+level0 restore
+showpage
+}bind def
+/DA{
+newpath arcn stroke
+}bind def
+/SN{
+transform
+.25 sub exch .25 sub exch
+round .25 add exch round .25 add exch
+itransform
+}bind def
+/DL{
+SN
+moveto
+SN
+lineto stroke
+}bind def
+/DC{
+newpath 0 360 arc closepath
+}bind def
+/TM matrix def
+/DE{
+TM currentmatrix pop
+translate scale newpath 0 0 .5 0 360 arc closepath
+TM setmatrix
+}bind def
+/RC/rcurveto load def
+/RL/rlineto load def
+/ST/stroke load def
+/MT/moveto load def
+/CL/closepath load def
+/FL{
+currentgray exch setgray fill setgray
+}bind def
+/BL/fill load def
+/LW/setlinewidth load def
+/RE{
+findfont
+dup maxlength 1 index/FontName known not{1 add}if dict begin
+{
+1 index/FID ne{def}{pop pop}ifelse
+}forall
+/Encoding exch def
+dup/FontName exch def
+currentdict end definefont pop
+}bind def
+/DEFS 0 def
+/EBEGIN{
+moveto
+DEFS begin
+}bind def
+/EEND/end load def
+/CNT 0 def
+/level1 0 def
+/PBEGIN{
+/level1 save def
+translate
+div 3 1 roll div exch scale
+neg exch neg exch translate
+0 setgray
+0 setlinecap
+1 setlinewidth
+0 setlinejoin
+10 setmiterlimit
+[]0 setdash
+/setstrokeadjust where{
+pop
+false setstrokeadjust
+}if
+/setoverprint where{
+pop
+false setoverprint
+}if
+newpath
+/CNT countdictstack def
+userdict begin
+/showpage{}def
+}bind def
+/PEND{
+clear
+countdictstack CNT sub{end}repeat
+level1 restore
+}bind def
+end def
+/setpacking where{
+pop
+setpacking
+}if
+%%EndResource
+%%IncludeResource: font Times-Roman
+%%IncludeResource: font Times-Bold
+%%IncludeResource: font Symbol
+%%IncludeResource: font Courier
+grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72
+def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron
+/scaron/zcaron/Ydieresis/trademark/quotesingle/.notdef/.notdef/.notdef
+/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
+/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
+/.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent
+/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen
+/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon
+/semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O
+/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex
+/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y
+/z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft
+/guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl
+/endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut
+/dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash
+/quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen
+/brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft
+/logicalnot/minus/registered/macron/degree/plusminus/twosuperior
+/threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior
+/ordmasculine/guilsinglright/onequarter/onehalf/threequarters
+/questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE
+/Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex
+/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis
+/multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn
+/germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla
+/egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis
+/eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash
+/ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def
+/Courier@0 ENC0/Courier RE/Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0
+ENC0/Times-Roman RE
+%%EndProlog
+%%Page: 1 1
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF(RRDTUT)72 48 Q -.834(ORIAL \( 1 \))-.18 F
+130.862(rrdtool RRDTUT)133.362 F -.834(ORIAL \( 1 \))-.18 F/F1 9
+/Times-Bold@0 SF 10.562 -6.496(NN AA)72 96 T -8.494(MM)6.496 G -6.001
+(EE)8.494 G F0(rrdtutorial \255 Ale)108 108 Q 2.5(xv)-.15 G(an den Bog)
+-2.75 E(aerdt')-.05 E 2.5(sR)-.55 G(RDtool tutorial)-2.5 E F1 -6.496(DD)
+72 124.8 S -6.001(EE)6.496 G -5.002(SS)6.001 G -6.496(CC)5.002 G -6.496
+(RR)6.496 G -3.499(II)6.496 G -5.497(PP)3.499 G -6.001(TT)5.497 G -3.499
+(II)6.001 G -7(OO)3.499 G -6.496(NN)7 G F0 2.325
+(RRDtool is written by T)108 136.8 R 2.325(obias Oetik)-.8 F 2.325
+(er <oetik)-.1 F 2.325(er@ee.ethz.ch> with contrib)-.1 F 2.325
+(utions from man)-.2 F 4.825(yp)-.15 G 2.325(eople all)-4.825 F 1.047
+(around the w)108 148.8 R 1.048(orld. This document is written by Ale)
+-.1 F 3.548(xv)-.15 G 1.048(an den Bog)-3.798 F 1.048(aerdt <ale)-.05 F
+(x@er)-.15 E 1.048(gens.op.het.net> to help)-.18 F
+(you understand what RRDtool is and what it can do for you.)108 160.8 Q
+.954(The documentation pro)108 177.6 R .953(vided with RRDtool can be t\
+oo technical for some people. This tutorial is here to)-.15 F .875(help\
+ you understand the basics of RRDtool. It should prepare you to read th\
+e documentation yourself.)108 189.6 R(It)5.875 E(also e)108 201.6 Q
+(xplains the general things about statistics with a focus on netw)-.15 E
+(orking.)-.1 E F1 -6.001(TT)72 218.4 S -6.496(UU)6.001 G 9.59 -6.001
+(TT O)6.496 H(OR)-.999 E(RI)-6.496 E(IA)-3.499 E(AL)-6.496 E(L)-6.001 E
+/F2 10/Times-Bold@0 SF -3.888(II)108 230.4 S -8.328(mm)3.888 G -5.558
+(pp)8.328 G -4.998(oo)5.558 G -4.438(rr)4.998 G -3.328(tt)4.438 G -4.998
+(aa)3.328 G -5.558(nn)4.998 G -3.328(tt)5.558 G F0 .734(Please don')108
+247.2 R 3.234(ts)-.18 G .734(kip ahead in this document!)-3.234 F .734
+(The \214rst part of this document e)5.734 F .734
+(xplains the basics and may be)-.15 F 2.5(boring. But)108 259.2 R
+(if you don')2.5 E 2.5(tu)-.18 G(nderstand the basics, the e)-2.5 E
+(xamples will not be as meaningful to you.)-.15 E F2 -9.998(WW)108 282 S
+-5.558(hh)9.998 G -4.998(aa)5.558 G 6.656 -3.328(tt i)4.998 H(is).55 E
+2.5(sR)-3.888 G(RR)-9.718 E(RD)-7.218 E(Dt)-7.218 E(to)-3.328 E(oo)
+-4.998 E(ol)-4.998 E 2.5(l?)-2.778 G(?)-7.498 E F0 .313
+(RRDtool refers to Round Robin Database tool.)108 298.8 R .314
+(Round robin is a technique that w)5.313 F .314(orks with a \214x)-.1 F
+.314(ed amount)-.15 F .923(of data, and a pointer to the current elemen\
+t. Think of a circle with some dots plotted on the edge, these)108 310.8
+R .191(dots are the places where data can be stored. Dra)108 322.8 R
+2.691(wa)-.15 G 2.691(na)-2.691 G(rro)-2.691 E 2.691(wf)-.25 G .191
+(rom the center of the circle to one of the dots,)-2.691 F .57
+(this is the pointer)108 334.8 R 5.57(.W)-.55 G .57
+(hen the current data is read or written, the pointer mo)-5.57 F -.15
+(ve)-.15 G 3.07(st).15 G 3.07(ot)-3.07 G .57(he ne)-3.07 F .57
+(xt element. As we)-.15 F .021(are on a circle there is no be)108 346.8
+R .021
+(ginning nor an end, you can go on and on. After a while, all the a)-.15
+F -.25(va)-.2 G .021(ilable places).25 F .077(will be used and the proc\
+ess automatically reuses old locations. This w)108 358.8 R(ay)-.1 E
+2.577(,t)-.65 G .077(he database will not gro)-2.577 F 2.577(wi)-.25 G
+2.577(ns)-2.577 G(ize)-2.577 E .055
+(and therefore requires no mainenance.)108 370.8 R .055(RRDtool w)5.055
+F .055(orks with with Round Robin Databases \(RRDs\). It stores)-.1 F
+(and retrie)108 382.8 Q -.15(ve)-.25 G 2.5(sd).15 G(ata from them.)-2.5
+E F2 -9.998(WW)108 405.6 S -5.558(hh)9.998 G -4.998(aa)5.558 G 6.656
+-3.328(tt d)4.998 H(da)-2.23 E(at)-4.998 E(ta)-3.328 E 2.5(ac)-4.998 G
+(ca)-6.938 E(an)-4.998 E 2.5(nb)-5.558 G(be)-8.058 E 2.5(ep)-4.438 G(pu)
+-8.058 E(ut)-5.558 E 2.5(ti)-3.328 G(in)-5.278 E(nt)-5.558 E(to)-3.328 E
+2.5(oa)-4.998 G(an)-7.498 E(n)-5.558 E F1 -6.496(RR)2.5 G -6.496(DD)
+6.496 G -6.496(DD)6.496 G F2 -4.998(??)8.996 G F0 -1.1(Yo)108 422.4 S
+3.328(un)1.1 G .828(ame it, it will probably \214t. Y)-3.328 F .827
+(ou should be able to measure some v)-1.1 F .827(alue at se)-.25 F -.15
+(ve)-.25 G .827(ral points in time and).15 F(pro)108 434.4 Q .023(vide \
+this information to RRDtool. If you can do this, RRDtool will be able t\
+o store it. The v)-.15 F .024(alues need to)-.25 F(be numerical b)108
+446.4 Q(ut don')-.2 E 2.5(th)-.18 G -2.25 -.2(av e)-2.5 H
+(to be, as opposed to)2.7 E/F3 9/Times-Roman@0 SF(MR)2.5 E(TG)-.54 E F0
+2.5(,i)C(nte)-2.5 E(gers.)-.15 E(Man)108 463.2 Q 3.231(ye)-.15 G .731
+(xamples talk about)-3.381 F F3(SNMP)3.23 E F0 .73(which is an acron)
+3.23 F .73(ym for Simple Netw)-.15 F .73(ork Management Protocol. `)-.1
+F(`Sim-)-.74 E(ple')108 475.2 Q 3.053('r)-.74 G .553(efers to the proto\
+col -- it does not mean it is simple to manage or monitor a netw)-3.053
+F .553(ork. After w)-.1 F(orking)-.1 E .142(your w)108 487.2 R .141
+(ay through this document, you should kno)-.1 F 2.641(we)-.25 G .141
+(nough to be able to understand what people are talking)-2.641 F .152
+(about. F)108 499.2 R .152(or no)-.15 F 1.452 -.65(w, j)-.25 H .152
+(ust realize that).65 F F3(SNMP)2.652 E F0 .152(is a w)2.652 F .152
+(ay to ask de)-.1 F .153(vices for the v)-.25 F .153
+(alues of counters the)-.25 F 2.653(yk)-.15 G 2.653(eep. It)-2.753 F
+.153(is the)2.653 F -.25(va)108 511.2 S
+(lue from those counters that are k).25 E(ept in the)-.1 E F3(RRD)2.5 E
+F0(.)A F2 -9.998(WW)108 534 S -5.558(hh)9.998 G -4.998(aa)5.558 G 6.656
+-3.328(tt c)4.998 H(ca)-1.11 E(an)-4.998 E 2.5(nI)-5.558 G 2.5(Id)-6.388
+G(do)-8.058 E 2.5(ow)-4.998 G(wi)-9.718 E(it)-2.778 E(th)-3.328 E 2.5
+(ht)-5.558 G(th)-5.828 E(hi)-5.558 E(is)-2.778 E 2.5(st)-3.888 G(to)
+-5.828 E(oo)-4.998 E(ol)-4.998 E 2.5(l?)-2.778 G(?)-7.498 E F0 1.329
+(RRDtool originated from)108 550.8 R F3(MR)3.829 E(TG)-.54 E F0 1.329
+(\(Multi Router T)3.829 F(raf)-.35 E 1.329(\214c Grapher\).)-.25 F F3
+(MR)6.329 E(TG)-.54 E F0 1.328(started as a tin)3.828 F 3.828(yl)-.15 G
+1.328(ittle script for)-3.828 F .509
+(graphing the use of a connection to the Internet.)108 562.8 R F3(MR)
+3.009 E(TG)-.54 E F0 -2.2 -.25(ev o)3.009 H(lv).25 E .509
+(ed into a tool for graphing other data sources)-.15 F .095
+(including temperature, speed, v)108 574.8 R .094
+(oltage, number of printouts and the lik)-.2 F .094(e. Most lik)-.1 F
+.094(ely you will start to use the)-.1 F .81
+(RRDtool to store and process data collected via)108 586.8 R F3(SNMP)
+3.31 E F0 3.31(.T)C .81(he data will most lik)-3.31 F .811
+(ely be bytes \(or bits\) trans-)-.1 F .019(fered from and to a netw)108
+598.8 R .019(ork or a computer)-.1 F 5.019(.R)-.55 G .018
+(RDtool lets you create a database, store data in it, retrie)-5.019 F
+.318 -.15(ve t)-.25 H(hat).15 E .293(data and create graphs in)108 610.8
+R F3(GIF)2.793 E F0 .293(format for display on a web bro)2.793 F(wser)
+-.25 E 2.793(.T)-.55 G(hose)-2.793 E F3(GIF)2.793 E F0 .294
+(images are dependent on the)2.794 F .559
+(data you collected and could be, for instance, an o)108 622.8 R -.15
+(ve)-.15 G(rvie).15 E 3.059(wo)-.25 G 3.059(ft)-3.059 G .559(he a)-3.059
+F -.15(ve)-.2 G .559(rage netw).15 F .559(ork usage, or the peaks that)
+-.1 F 2.62(occurred. It)108 634.8 R .12
+(can also be used to display tidal w)2.62 F -2.25 -.2(av e)-.1 H .121
+(s, solar radiation, po).2 F .121(wer consumption, number of visitors)
+-.25 F .542(at an e)108 646.8 R .542(xhibition, noise le)-.15 F -.15(ve)
+-.25 G .542(ls near an airport, temperature on your f).15 F -.2(avo)-.1
+G .542(rite holiday location, temperature in).2 F .54
+(the fridge and whate)108 658.8 R -.15(ve)-.25 G 3.04(ry).15 G .54
+(ou imagination can come up with. Y)-3.04 F .54
+(ou need a sensor to measure the data and be)-1.1 F
+(able to feed the numbers to RRDtool.)108 670.8 Q 154.84(24/Oct/99 Last)
+72 768 R(change: 1.0.8)2.5 E(1)192.34 E EP
+%%Page: 2 2
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF(RRDTUT)72 48 Q -.834(ORIAL \( 1 \))-.18 F
+130.862(rrdtool RRDTUT)133.362 F -.834(ORIAL \( 1 \))-.18 F/F1 10
+/Times-Bold@0 SF -9.998(WW)108 96 S -5.558(hh)9.998 G -4.998(aa)5.558 G
+6.656 -3.328(tt i)4.998 H(if).55 E 2.5(fI)-3.328 G 2.5(Is)-6.388 G(st)
+-6.388 E(ti)-3.328 E(il)-2.778 E(ll)-2.778 E 2.5(lh)-2.778 G(ha)-8.058 E
+-.25(av)-4.998 G -.1(ve)-4.748 G 2.5(ep)-4.338 G(pr)-8.058 E -.18(ro)
+-4.438 G(ob)-4.818 E(bl)-5.558 E(le)-2.778 E(em)-4.438 E(ms)-8.328 E 2.5
+(sa)-3.888 G(af)-7.498 E(ft)-3.328 E(te)-3.328 E(er)-4.438 E 2.5(rr)
+-4.438 G -.18(re)-6.938 G(ea)-4.258 E(ad)-4.998 E(di)-5.558 E(in)-2.778
+E(ng)-5.558 E 2.5(gt)-4.998 G(th)-5.828 E(hi)-5.558 E(is)-2.778 E 2.5
+(sd)-3.888 G(do)-8.058 E(oc)-4.998 E(cu)-4.438 E(um)-5.558 E(me)-8.328 E
+(en)-4.438 E(nt)-5.558 E 2.5(t?)-3.328 G(?)-7.498 E F0 .729
+(First of all: read it ag)108 112.8 R .729(ain! Y)-.05 F .729(ou may ha)
+-1.1 F 1.028 -.15(ve m)-.2 H .728(issed something.).15 F .728
+(If you are unable to compile the sources and)5.728 F .208(you ha)108
+124.8 R .508 -.15(ve a f)-.2 H .208(airly common).05 F/F2 9
+/Times-Roman@0 SF(OS)2.708 E F0 2.708(,i)C 2.708(tw)-2.708 G .208
+(ill probably not be the f)-2.708 F .209
+(ault of RRDtool. There may be precompiled v)-.1 F(er)-.15 E(-)-.2 E
+.556(sions around on the Internet. If the)108 136.8 R 3.056(yc)-.15 G
+.556(ome from trusted sources, get one of those.)-3.056 F .556
+(If on the other hand the)5.556 F .373(program w)108 148.8 R .373
+(orks b)-.1 F .373(ut does not gi)-.2 F .673 -.15(ve y)-.25 H .373
+(ou the e).15 F .374
+(xpected results, it will be a problem with con\214guring it. Re)-.15 F
+(vie)-.25 E(w)-.25 E(your con\214guration and compare it with the e)108
+160.8 Q(xamples that follo)-.15 E -.65(w.)-.25 G .053
+(There is a mailing list and an archi)108 177.6 R .352 -.15(ve o)-.25 H
+2.552(fi).15 G .052(t. Read the list for a fe)-2.552 F 2.552(ww)-.25 G
+.052(eeks and search the archi)-2.552 F -.15(ve)-.25 G 2.552(.I).15 G
+2.552(ti)-2.552 G 2.552(sc)-2.552 G(onsid-)-2.552 E .126
+(ered rude to just ask a question without searching the archi)108 189.6
+R -.15(ve)-.25 G .127(s: your problem may already ha).15 F .427 -.15
+(ve b)-.2 H .127(een solv).15 F(ed)-.15 E .504(for somebody else!)108
+201.6 R .503(This is true for most, if not all, mailing lists and not o\
+nly for this particular list! Look)5.504 F(in the documentation that ca\
+me with RRDtool for the location and usage of the list.)108 213.6 Q
+3.191(Is)108 230.4 S .691(uggest you tak)-3.191 F 3.191(eam)-.1 G .691
+(oment to subscribe to the mailing list right no)-3.191 F 3.191(wb)-.25
+G 3.191(ys)-3.191 G .691(ending an email to <rrd-users-)-3.191 F 1.379
+(request@list.ee.ethz.ch> with a subject of `)108 242.4 R(`subscribe')
+-.74 E 1.379('. If you e)-.74 F -.15(ve)-.25 G 3.879(rw).15 G 1.379
+(ant to lea)-3.979 F 1.679 -.15(ve t)-.2 H 1.378(his list, you write an)
+.15 F(email to the same address b)108 254.4 Q(ut no)-.2 E 2.5(ww)-.25 G
+(ith a subject of `)-2.5 E(`unsubscribe')-.74 E('.)-.74 E F1 -7.778(HH)
+108 277.2 S 7.396 -4.998(oo w)7.778 H 2.5(ww)-2.22 G(wi)-9.718 E(il)
+-2.778 E(ll)-2.778 E 2.5(ly)-2.778 G -.25(yo)-7.498 G(ou)-4.748 E 2.5
+(uh)-5.558 G(he)-8.058 E(el)-4.438 E(lp)-2.778 E 2.5(pm)-5.558 G(me)
+-10.828 E 2.5(e?)-4.438 G(?)-7.498 E F0 .382(By gi)108 294 R .382
+(ving you some detailed descriptions with detailed e)-.25 F 2.882
+(xamples. It)-.15 F .382(is assumed that follo)2.882 F .382
+(wing the instruc-)-.25 F .674(tions in the order presented will gi)108
+306 R .974 -.15(ve y)-.25 H .674(ou enough kno).15 F .674
+(wledge of RRDtool to e)-.25 F .674(xperiment for yourself.)-.15 F .674
+(If it)5.674 F(doesn')108 318 Q 3.203(tw)-.18 G .704
+(ork the \214rst time, don')-3.303 F 3.204(tg)-.18 G -2.15 -.25(iv e)
+-3.204 H .704(up. Reread the stuf)3.454 F 3.204(ft)-.25 G .704
+(hat you did understand, you may ha)-3.204 F 1.004 -.15(ve m)-.2 H
+(issed).15 E 2.755(something. By)108 330 R(follo)2.755 E .255
+(wing the e)-.25 F .254(xamples you get some hands-on e)-.15 F .254
+(xperience and, e)-.15 F -.15(ve)-.25 G 2.754(nm).15 G .254
+(ore important, some)-2.754 F(background information of ho)108 342 Q 2.5
+(wi)-.25 G 2.5(tw)-2.5 G(orks.)-2.6 E -1.1(Yo)108 358.8 S 5.044(uw)1.1 G
+2.544(ill need to kno)-5.044 F 5.044(ws)-.25 G 2.545(omething about he)
+-5.044 F 2.545(xadecimal numbers. If you don')-.15 F 5.045(tt)-.18 G
+2.545(hen start with reading)-5.045 F -.74(``)108 370.8 S(bin_dec_he).74
+E(x')-.15 E 2.5('b)-.74 G(efore you continue here.)-2.5 E F1 10.826
+-7.218(YY o)108 393.6 T(ou)2.22 E(ur)-5.558 E 2.5<728c>-4.438 G<8c72>
+-8.058 E(rs)-4.438 E(st)-3.888 E 2.5(tR)-3.328 G(Ro)-9.718 E(ou)-4.998 E
+(un)-5.558 E(nd)-5.558 E 2.5(dR)-5.558 G(Ro)-9.718 E(ob)-4.998 E(bi)
+-5.558 E(in)-2.778 E 2.5(nD)-5.558 G(Da)-9.718 E(at)-4.998 E(ta)-3.328 E
+(ab)-4.998 E(ba)-5.558 E(as)-4.998 E(se)-3.888 E(e)-4.438 E F0 .102
+(In my opinion the best w)108 410.4 R .102
+(ay to learn something is to actually do it.)-.1 F(Wh)5.101 E 2.601(yn)
+-.05 G .101(ot start right no)-2.601 F 2.601(w? W)-.25 F 2.601(ew)-.8 G
+.101(ill create)-2.601 F 2.944(ad)108 422.4 S .444(atabase, put some v)
+-2.944 F .444(alues in it and e)-.25 F .444(xtract this data ag)-.15 F
+2.944(ain. Y)-.05 F .444(our output should be the same as the output)
+-1.1 F(that is included in this document.)108 434.4 Q 2.605 -.8(We w)108
+451.2 T 1.005(ill start with some easy stuf).8 F 3.505(fa)-.25 G 1.005
+(nd compare a car with a router)-3.505 F 3.505(,o)-.4 G 3.504(rc)-3.505
+G 1.004(ompare kilometers \(miles if you)-3.504 F
+(wish\) with bits and bytes. It')108 463.2 Q 2.5(sa)-.55 G
+(ll the same: some number o)-2.5 E -.15(ve)-.15 G 2.5(rs).15 G
+(ome time.)-2.5 E 1.002(Assume we ha)108 480 R 1.302 -.15(ve a d)-.2 H
+-.25(ev).15 G 1.003(ice that transfers bytes to and from the Internet.)
+.25 F 1.003(This de)6.003 F 1.003(vice k)-.25 F 1.003
+(eeps a counter that)-.1 F .982
+(starts at zero when it is turned on, increasing with e)108 492 R -.15
+(ve)-.25 G .982(ry byte that is transfered. This counter will ha).15 F
+1.282 -.15(ve a)-.2 H 1.066(maximum v)108 504 R 1.066(alue, if that v)
+-.25 F 1.066(alue is reached and an e)-.25 F 1.066
+(xtra byte is counted, the counter starts all o)-.15 F -.15(ve)-.15 G
+3.567(ra).15 G 3.567(tz)-3.567 G(ero.)-3.567 E 1.276
+(This is the same as man)108 516 R 3.776(yc)-.15 G 1.276
+(ounters in the w)-3.776 F 1.276
+(orld such as the mileage counter in a car)-.1 F 6.275(.M)-.55 G 1.275
+(ost discussions)-6.275 F .471(about netw)108 528 R .471
+(orking talk about bits per second so lets get used to that right a)-.1
+F -.1(wa)-.15 G 1.771 -.65(y. A).1 H .471(ssume a byte is eight bits).65
+F .049(and start to think in bits not bytes. The counter)108 540 R 2.548
+(,h)-.4 G -.25(ow)-2.548 G -2.15 -.25(ev e).25 H .848 -.4(r, s).25 H
+.048(till counts bytes !).4 F .048(In the)5.048 F F2(SNMP)2.548 E F0 -.1
+(wo)2.548 G .048(rld most of the).1 F .566
+(counters are 32 bits. That means the)108 552 R 3.066(ya)-.15 G .566
+(re counting from 0 to 4294967295. W)-3.066 F 3.067(ew)-.8 G .567
+(ill use these v)-3.067 F .567(alues in the)-.25 F -.15(ex)108 564 S
+3.71(amples. The).15 F(de)3.71 E 1.21(vice, when ask)-.25 F 1.21
+(ed, returns the current v)-.1 F 1.209(alue of the counter)-.25 F 3.709
+(.W)-.55 G 3.709(ek)-4.509 G(no)-3.709 E 3.709(wt)-.25 G 1.209
+(he time that has)-3.709 F .861(passes since we last ask)108 576 R .861
+(ed so we no)-.1 F 3.361(wk)-.25 G(no)-3.361 E 3.361(wh)-.25 G 1.361
+-.25(ow m)-3.361 H(an).25 E 3.361(yb)-.15 G .861(ytes ha)-3.361 F 1.161
+-.15(ve b)-.2 H .861(een transfered).15 F/F3 10/Symbol SF(***)3.362 E F0
+.862(on a)B -.15(ve)-.2 G(rage).15 E F3(***)A F0(per)3.362 E
+(second. This is not v)108 588 Q(ery hard to calculate. First in w)-.15
+E(ords, then in calculations:)-.1 E 5(1. T)108 604.8 R(ak)-.8 E 2.5(et)
+-.1 G(he current counter)-2.5 E 2.5(,s)-.4 G(ubtract the pre)-2.5 E
+(vious v)-.25 E(alue from it.)-.25 E 5(2. Do)108 621.6 R
+(the same with the current time and the pre)2.5 E(vious time.)-.25 E 5
+(3. Di)108 638.4 R .311(vide the outcome of \(1\) by the outcome of \(2\
+\), the result is the amount of bytes per second. Multiply)-.25 F
+(by eight to get the number of bits per second \(bps\).)123 650.4 Q/F4
+10/Courier@0 SF
+(bps = \(counter_now - counter_before\) / \(time_now - time_before\))120
+667.2 Q F3(*)6 E F4(8)6 E F0 -.15(Fo)108 691.2 S 2.915(rs).15 G .415
+(ome people it may help to translate this to a automobile e)-2.915 F
+.416(xample: Do not try this e)-.15 F .416(xample, and if you)-.15 F
+(do, don')108 703.2 Q 2.5(tb)-.18 G(lame me for the results.)-2.5 E
+154.84(24/Oct/99 Last)72 768 R(change: 1.0.8)2.5 E(2)192.34 E EP
+%%Page: 3 3
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF(RRDTUT)72 48 Q -.834(ORIAL \( 1 \))-.18 F
+130.862(rrdtool RRDTUT)133.362 F -.834(ORIAL \( 1 \))-.18 F .456(People\
+ who are not used to think in kilometers per hour can translate most in\
+to miles per hour by di)108 96 R(viding)-.25 E
+(km by 1.6 \(close enough\).)108 108 Q 2.5(Iw)5 G(ill use the follo)-2.5
+E(wing abbre)-.25 E(viations:)-.25 E/F1 10/Courier@0 SF 18(M: meter)114
+124.8 R 12(KM: kilometer)114 136.8 R(\(= 1000 meters\).)6 E 18(H: hour)
+114 148.8 R 18(S: second)114 160.8 R(KM/H: kilometers per hour)114 172.8
+Q 6(M/S: meters)114 184.8 R(per second)6 E F0 -1.1(Yo)108 208.8 S(u')1.1
+E .28(re dri)-.5 F .28(ving a car)-.25 F 2.78(.A)-.55 G 2.78(t1)-2.78 G
+.281(2:05 you read the counter in the dashboard and it tells you that t\
+he car has mo)-2.78 F -.15(ve)-.15 G(d).15 E(12345)108 220.8 Q/F2 9
+/Times-Roman@0 SF(KM)3.019 E F0 .519(until that moment.)3.019 F .519
+(At 12:10 you look ag)5.519 F .518(ain, it reads 12357)-.05 F F2(KM)
+3.018 E F0 3.018(.T)C .518(his means you ha)-3.018 F .818 -.15(ve t)-.2
+H(ra).15 E -.15(ve)-.2 G(led).15 E(12)108 232.8 Q F2(KM)3.061 E F0 .561
+(in \214v)3.061 F 3.061(em)-.15 G .561(inutes. A scientist w)-3.061 F
+.562(ould translate that into meters per second and this mak)-.1 F .562
+(es a nice com-)-.1 F(parison to)108 244.8 Q -.1(wa)-.25 G
+(rds the problem of \(bytes per \214v).1 E 2.5(em)-.15 G(inutes\) v)-2.5
+E(ersus \(bits per second\).)-.15 E 1.63 -.8(We t)108 261.6 T(ra).8 E
+-.15(ve)-.2 G .03(led 12 kilometers which is 12000 meters. W).15 F 2.53
+(ed)-.8 G .03(id that in \214v)-2.53 F 2.53(em)-.15 G .03
+(inutes which translates into 300 sec-)-2.53 F
+(onds. Our speed is 12000M / 300S equals 40 M/S.)108 273.6 Q 1.867 -.8
+(We c)108 290.4 T .267(ould also calculate the speed in).8 F F2(KM/H)
+2.767 E F0 2.767(:1)C 2.767(2t)-2.767 G .267(imes \214v)-2.767 F 2.767
+(em)-.15 G .267(inutes is an hour so we ha)-2.767 F .568 -.15(ve t)-.2 H
+2.768(om).15 G .268(ultiply 12)-2.768 F F2(KM)2.768 E F0 .162
+(by 12 to get 144)108 302.4 R F2(KM/H)2.662 E F0 5.162(.F)C .162
+(or our nati)-5.312 F .461 -.15(ve E)-.25 H .161
+(nglish speaking friends: that').15 F 2.661(s9)-.55 G(0)-2.661 E F2(MPH)
+2.661 E F0 .161(so don')2.661 F 2.661(tt)-.18 G .161(ry this e)-2.661 F
+.161(xample at)-.15 F(home or where I li)108 314.4 Q .3 -.15(ve :)-.25 H
+(\)).15 E .208(Remember: these numbers are a)108 331.2 R -.15(ve)-.2 G
+.209(rages only).15 F 5.209(.T)-.65 G .209(here is no w)-5.209 F .209
+(ay to \214gure out from the numbers, if you dro)-.1 F -.15(ve)-.15 G
+(at a constant speed.)108 343.2 Q(There is an e)5 E
+(xample later on in this tutorial that e)-.15 E(xplains this.)-.15 E
+2.538(Ih)108 360 S .038(ope you understand that there is no dif)-2.538 F
+.038(ference in calculating M/S or bps; only the w)-.25 F .038
+(ay we collect the data)-.1 F(is dif)108 372 Q(ferent. Ev)-.25 E
+(en the K from kilo is the same as in netw)-.15 E
+(orking terms k also means 1000.)-.1 E 2.228 -.8(We w)108 388.8 T .628
+(ill no).8 F 3.128(wc)-.25 G .628(reate a database where we can k)-3.128
+F .629(eep all these interesting numbers. The method used to start)-.1 F
+.853(the program may dif)108 400.8 R .853(fer slightly from)-.25 F F2
+(OS)3.352 E F0(to)3.352 E F2(OS)3.352 E F0 -.2(bu)3.352 G 3.352(tIa).2 G
+.852(ssume you can \214gure it out if it w)-3.352 F .852(orks dif)-.1 F
+.852(ferent on)-.25 F(your)108 412.8 Q F2(OS)2.989 E F0 2.989(.M)C(ak)
+-2.989 E 2.989(es)-.1 G .489(ure you do not o)-2.989 F -.15(ve)-.15 G
+.489(rwrite an).15 F 2.989<798c>-.15 G .489(le on your system when e)
+-2.989 F -.15(xe)-.15 G .49(cuting the follo).15 F .49(wing command)-.25
+F(and type the whole line as one long line \(I had to split it for read\
+ability\) and skip all of the `\\' characters.)108 424.8 Q F1
+(rrdtool create test.rrd)126 441.6 Q(\\)78 E(--start 920804400)180 453.6
+Q(\\)60 E 12(DS:speed:COUNTER:600:U:U \\)180 465.6 R 36
+(RRA:AVERAGE:0.5:1:24 \\)180 477.6 R(RRA:AVERAGE:0.5:6:10)180 489.6 Q F0
+(\(So enter:)108 513.6 Q F1
+(rrdtool create test.rrd --start 920804400 DS ...)2.5 E F0(\))A/F3 10
+/Times-Bold@0 SF -9.998(WW)108 536.4 S -5.558(hh)9.998 G -4.998(aa)5.558
+G 6.656 -3.328(tt h)4.998 H(ha)-2.23 E(as)-4.998 E 2.5(sb)-3.888 G(be)
+-8.058 E(ee)-4.438 E(en)-4.438 E 2.5(nc)-5.558 G(cr)-6.938 E -.18(re)
+-4.438 G(ea)-4.258 E(at)-4.998 E(te)-3.328 E(ed)-4.438 E 2.5(d?)-5.558 G
+(?)-7.498 E F0 3.135 -.8(We c)108 553.2 T 1.534(reated the round robin \
+database called test \(test.rrd\) which starts at noon the day I starte\
+d \(7th of).8 F .933
+(march, 1999\) writing this document. It holds one data source \()108
+565.2 R F2(DS)A F0 3.433(\)n)C .933(amed `)-3.433 F(`speed')-.74 E 3.433
+('t)-.74 G .933(hat gets b)-3.433 F .933(uilt from a)-.2 F(counter)108
+577.2 Q 3.623(.T)-.55 G 1.123(his counter is read e)-3.623 F -.15(ve)
+-.25 G 1.123(ry \214v).15 F 3.623(em)-.15 G 1.123(inutes \(def)-3.623 F
+1.122(ault\) In the same database tw)-.1 F 3.622(or)-.1 G 1.122
+(ound robin archi)-3.622 F -.15(ve)-.25 G(s).15 E .83(\(RRAs\) are k)108
+589.2 R .83(ept, one a)-.1 F -.15(ve)-.2 G .83(rages the data e).15 F
+-.15(ve)-.25 G .831(ry time it is read \(e).15 F 3.331(gt)-.15 G(here')
+-3.331 E 3.331(sn)-.55 G .831(othing to a)-3.331 F -.15(ve)-.2 G .831
+(rage\) and k).15 F .831(eeps 24)-.1 F .784
+(samples \(24 times 5 minutes is 2 hours\). The other a)108 601.2 R -.15
+(ve)-.2 G .784(rages 6 v).15 F .783
+(alues \(half hour\) and contains 10 of such)-.25 F -2.25 -.2(av e)108
+613.2 T(rages \(e).2 E 2.5(g5h)-.15 G
+(ours\) The remaining options will be discussed later on.)-2.5 E .489
+(RRDtool w)108 630 R .49(orks with special time stamps coming from the)
+-.1 F F2(UNIX)2.99 E F0 -.1(wo)2.99 G 2.99(rld. This).1 F .49
+(time stamp is the number of)2.99 F .779
+(seconds that passed since January 1st 1970)108 642 R F2(UTC)3.279 E F0
+5.779(.T)C .779
+(his time stamp is translated into local time and it will)-5.779 F
+(therefore look dif)108 654 Q(ferent for the dif)-.25 E
+(ferent time zones.)-.25 E .249
+(Chances are that you are not in the same part of the w)108 670.8 R .25
+(orld as I am.)-.1 F .25(This means your time zone is dif)5.25 F
+(ferent.)-.25 E .105(In all e)108 682.8 R .104(xamples where I talk abo\
+ut time, the hours may be wrong for you. This has little ef)-.15 F .104
+(fect on the results)-.25 F 1.082(of the e)108 694.8 R 1.082
+(xamples, just correct the hours while reading.)-.15 F 1.082(As an e)
+6.082 F 1.083(xample: where I will see `)-.15 F(`12:05')-.74 E 3.583('t)
+-.74 G(he)-3.583 E F2(UK)3.583 E F0(folks will see `)108 706.8 Q
+(`11:05')-.74 E('.)-.74 E 154.84(24/Oct/99 Last)72 768 R(change: 1.0.8)
+2.5 E(3)192.34 E EP
+%%Page: 4 4
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF(RRDTUT)72 48 Q -.834(ORIAL \( 1 \))-.18 F
+130.862(rrdtool RRDTUT)133.362 F -.834(ORIAL \( 1 \))-.18 F 1.6 -.8
+(We n)108 96 T .5 -.25(ow h).8 H -2.25 -.2(av e).25 H
+(to \214ll our database with some numbers. W)2.7 E(e')-.8 E
+(ll pretend to ha)-.1 E .3 -.15(ve r)-.2 H(ead the follo).15 E
+(wing numbers:)-.25 E/F1 10/Courier@0 SF 6(12:05 12345)114 112.8 R(KM)6
+E 6(12:10 12357)114 124.8 R(KM)6 E 6(12:15 12363)114 136.8 R(KM)6 E 6
+(12:20 12363)114 148.8 R(KM)6 E 6(12:25 12363)114 160.8 R(KM)6 E 6
+(12:30 12373)114 172.8 R(KM)6 E 6(12:35 12383)114 184.8 R(KM)6 E 6
+(12:40 12393)114 196.8 R(KM)6 E 6(12:45 12399)114 208.8 R(KM)6 E 6
+(12:50 12405)114 220.8 R(KM)6 E 6(12:55 12411)114 232.8 R(KM)6 E 6
+(13:00 12415)114 244.8 R(KM)6 E 6(13:05 12420)114 256.8 R(KM)6 E 6
+(13:10 12422)114 268.8 R(KM)6 E 6(13:15 12423)114 280.8 R(KM)6 E F0 1.6
+-.8(We \214)108 304.8 T(ll the database as follo).8 E(ws:)-.25 E F1(rrd\
+tool update test.rrd 920804700:12345 920805000:12357 920805300:12363)114
+321.6 Q(rrdtool update test.rrd 920805600:12363 920805900:12363 9208062\
+00:12373)114 333.6 Q(rrdtool update test.rrd 920806500:12383 920806800:\
+12393 920807100:12399)114 345.6 Q(rrdtool update test.rrd 920807400:124\
+05 920807700:12411 920808000:12415)114 357.6 Q(rrdtool update test.rrd \
+920808300:12420 920808600:12422 920808900:12423)114 369.6 Q F0
+(This reads: update our test database with the follo)108 393.6 Q
+(wing numbers)-.25 E F1(time 920804700, value 12345)114 410.4 Q
+(time 920805000, value 12357)114 422.4 Q F0(etcetera.)108 446.4 Q .433
+(As you can see, it is possible to feed more than one v)108 463.2 R .433
+(alue into the database in one command. I had to stop)-.25 F
+(at three for readability b)108 475.2 Q(ut the real maximum is)-.2 E/F2
+9/Times-Roman@0 SF(OS)2.5 E F0(dependent.)2.5 E 1.6 -.8(We c)108 492 T
+(an no).8 E 2.5(wr)-.25 G(etrie)-2.5 E .3 -.15(ve t)-.25 H
+(he data from our database using `).15 E(`rrdtool fetch":)-.74 E F1
+(rrdtool fetch test.rrd AVERAGE --start 920804400 --end 920809200)114
+508.8 Q F0(It should return the follo)108 532.8 Q(wing output:)-.25 E F1
+(speed)204 549.6 Q F0 154.84(24/Oct/99 Last)72 768 R(change: 1.0.8)2.5 E
+(4)192.34 E EP
+%%Page: 5 5
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF(RRDTUT)72 48 Q -.834(ORIAL \( 1 \))-.18 F
+130.862(rrdtool RRDTUT)133.362 F -.834(ORIAL \( 1 \))-.18 F/F1 10
+/Courier@0 SF 36(920804700: NaN)114 96 R 30(920805000: 0.04)114 108 R 30
+(920805300: 0.02)114 120 R 30(920805600: 0.00)114 132 R 30
+(920805900: 0.00)114 144 R 30(920806200: 0.03)114 156 R 30
+(920806500: 0.03)114 168 R 30(920806800: 0.03)114 180 R 30
+(920807100: 0.02)114 192 R 30(920807400: 0.02)114 204 R 30
+(920807700: 0.02)114 216 R 30(920808000: 0.01)114 228 R 30
+(920808300: 0.02)114 240 R 30(920808600: 0.01)114 252 R 30
+(920808900: 0.00)114 264 R 36(920809200: NaN)114 276 R F0 .925
+(If it doesn')108 300 R .925(t, something may be wrong.)-.18 F .925
+(Perhaps your)5.925 F/F2 9/Times-Roman@0 SF(OS)3.425 E F0 .926
+(will print `)3.425 F(`NaN')-.74 E 3.426('i)-.74 G 3.426(nad)-3.426 G
+(if)-3.426 E .926(ferent form.)-.25 F .926(It repre-)5.926 F 1.011
+(sents `)108 312 R 1.011(`Not A Number')-.74 F 3.511('. If)-.74 F(your)
+3.511 E F2(OS)3.511 E F0 1.01(writes `)3.51 F(`U')-.74 E 3.51('o)-.74 G
+3.51(r`)-3.51 G(`)-4.25 E F2(UNKN)A F0 2.49 -.74('' o)D 3.51(rs).74 G
+1.01(omething similar that')-3.51 F 3.51(so)-.55 G(kay)-3.51 E 6.01(.I)
+-.65 G 3.51(fs)-6.01 G(ome-)-3.51 E .838(thing else is wrong, it will p\
+robably be due to an error you made \(assuming that my tutorial is corr\
+ect of)108 324 R
+(course :\255\). In that case: delete the database and try ag)108 336 Q
+(ain.)-.05 E(What this output represents will become clear in the rest \
+of the tutorial.)108 352.8 Q/F3 10/Times-Bold@0 SF -3.888(II)108 375.6 S
+6.656 -3.328(tt i)3.888 H(is).55 E 2.5(st)-3.888 G(ti)-5.828 E(im)-2.778
+E(me)-8.328 E 2.5(et)-4.438 G(to)-5.828 E 2.5(oc)-4.998 G(cr)-6.938 E
+-.18(re)-4.438 G(ea)-4.258 E(at)-4.998 E(te)-3.328 E 2.5(es)-4.438 G(so)
+-6.388 E(om)-4.998 E(me)-8.328 E 2.5(eg)-4.438 G(gr)-7.498 E(ra)-4.438 E
+(ap)-4.998 E(ph)-5.558 E(hi)-5.558 E(ic)-2.778 E(cs)-4.438 E(s)-3.888 E
+F0 -.35(Tr)108 392.4 S 2.5(yt).35 G(he follo)-2.5 E(wing command:)-.25 E
+F1(rrdtool graph speed.gif)114 409.2 Q(\\)198 E
+(--start 920804400 --end 920808000)162 421.2 Q(\\)90 E 78
+(DEF:myspeed=test.rrd:speed:AVERAGE \\)162 433.2 R(LINE2:myspeed#FF0000)
+162 445.2 Q F0 2.325
+(This will create speed.gif which starts at 12:00 and ends at 13:00.)108
+469.2 R 2.325(There is a de\214nition of v)7.325 F(ariable)-.25 E .491
+(myspeed, it is the data from)108 481.2 R F2(RRA)2.991 E F0 -.74(``)
+2.991 G(speed').74 E 2.991('o)-.74 G .491(ut of database `)-2.991 F
+(`test.rrd')-.74 E .492('. The line dra)-.74 F .492(wn is 2 pix)-.15 F
+.492(els high, and)-.15 F .366(comes from v)108 493.2 R .366
+(ariable myspeed. The color is red.)-.25 F -1.1(Yo)5.366 G(u')1.1 E .366
+(ll notice that the start of the graph is not at 12:00 b)-.1 F(ut)-.2 E
+1.064(at 12:05 and this is because we ha)108 505.2 R 1.365 -.15(ve i)-.2
+H(nsuf).15 E 1.065(\214cient data to tell the a)-.25 F -.15(ve)-.2 G
+1.065(rage before that time. This will only).15 F(happen when you miss \
+some samples, this will not happen a lot, hopefully)108 517.2 Q(.)-.65 E
+(If this has w)108 534 Q(ork)-.1 E
+(ed: congratulations! If not, check what went wrong.)-.1 E .148
+(The colors are b)108 550.8 R .148(uilt up from red, green and blue. F)
+-.2 F .148(or each of the components, you specify ho)-.15 F 2.648(wm)
+-.25 G .148(uch to use)-2.648 F .201(in he)108 562.8 R .201
+(xadecimal where 00 means not included and)-.15 F F2(FF)2.701 E F0 .201
+(means fully included.)2.701 F .202(The `)5.201 F(`color')-.74 E 2.702
+('w)-.74 G .202(hite is a mixture)-2.702 F(of red, green and blue:)108
+574.8 Q F2(FFFFFF)2.5 E F0(The `)2.5 E(`color')-.74 E 2.5('b)-.74 G
+(lack is all colors of)-2.5 E(f: 000000)-.25 E F1 24(red #FF0000)126
+591.6 R 12(green #00FF00)126 603.6 R 18(blue #0000FF)126 615.6 R
+(magenta #FF00FF)126 627.6 Q(\(mixed red with blue\))30 E 18
+(gray #555555)126 639.6 R(\(one third of all components\))30 E F0(The)
+108 663.6 Q F2(GIF)2.643 E F0 .143
+(you just created can be displayed using your f)2.643 F -.2(avo)-.1 G
+.143(rite image vie).2 F(wer)-.25 E 5.143(.W)-.55 G .143(eb bro)-5.943 F
+.143(wsers will display the)-.25 F F2(GIF)108 675.6 Q F0(via the)2.5 E
+F2(URL)2.5 E F0 -.74(``)2.5 G -1.95(\214le://the/path/to/speed.gif ').74
+F(')-.74 E 154.84(24/Oct/99 Last)72 768 R(change: 1.0.8)2.5 E(5)192.34 E
+EP
+%%Page: 6 6
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF(RRDTUT)72 48 Q -.834(ORIAL \( 1 \))-.18 F
+130.862(rrdtool RRDTUT)133.362 F -.834(ORIAL \( 1 \))-.18 F/F1 10
+/Times-Bold@0 SF -7.778(GG)108 96 S -4.438(rr)7.778 G -4.998(aa)4.438 G
+-5.558(pp)4.998 G -5.558(hh)5.558 G -2.778(ii)5.558 G -4.438(cc)2.778 G
+7.776 -3.888(ss w)4.438 H(wi)-3.33 E(it)-2.778 E(th)-3.328 E 2.5(hs)
+-5.558 G(so)-6.388 E(om)-4.998 E(me)-8.328 E 2.5(em)-4.438 G(ma)-10.828
+E(at)-4.998 E(th)-3.328 E(h)-5.558 E F0 .985(When looking at the image,\
+ you notice that the horizontal axis is labeled 12:10, 12:20, 12:30, 12\
+:40 and)108 112.8 R .305(12:50. The tw)108 124.8 R 2.804(or)-.1 G .304
+(emaining times \(12:00 and 13:00\) w)-2.804 F .304
+(ould not be displayed nicely so the)-.1 F 2.804(ya)-.15 G .304
+(re skipped.)-2.804 F(The)5.304 E -.15(ve)108 136.8 S .492
+(rtical axis displays the range we entered. W).15 F 2.992(ep)-.8 G(ro)
+-2.992 E .493(vided kilometers and when di)-.15 F .493
+(vided by 300 seconds, we)-.25 F .647(get v)108 148.8 R .646
+(ery small numbers. T)-.15 F 3.146(ob)-.8 G 3.146(ee)-3.146 G .646
+(xact, the \214rst v)-3.296 F .646(alue w)-.25 F .646
+(as 12 \(12357-12345\) and di)-.1 F .646(vided by 300 this mak)-.25 F
+(es)-.1 E 1.165(0.04, which is displayed by RRDtool as `)108 160.8 R
+1.165(`40 m')-.74 F 3.665('m)-.74 G 1.165(eaning `)-3.665 F(`40/1000')
+-.74 E 1.165('. The `)-.74 F(`m')-.74 E 3.666('h)-.74 G 1.166
+(as nothing to do with)-3.666 F .193
+(meters, kilometers or millimeters! RRDtool doesn')108 172.8 R 2.693(tk)
+-.18 G(no)-2.693 E 2.693(wa)-.25 G .193(bout all this, it just w)-2.693
+F .193(orks with numbers and not)-.1 F(with meters...)108 184.8 Q 5.568
+(What we did wrong w)108 201.6 R 5.568(as that we should ha)-.1 F 5.868
+-.15(ve m)-.2 H 5.568(easured in meters, this w).15 F 5.568(ould ha)-.1
+F 5.868 -.15(ve b)-.2 H(een).15 E
+(\(12357000-12345000\)/300 = 12000/300 = 40.)108 213.6 Q(Let')108 230.4
+Q 3.46(sc)-.55 G .96(orrect that. W)-3.46 F 3.46(ec)-.8 G .96
+(ould recreate our database and store the correct data b)-3.46 F .959
+(ut there is a better w)-.2 F .959(ay: do)-.1 F
+(some calculations while creating the gif \214le !)108 242.4 Q/F2 10
+/Courier@0 SF(rrdtool graph speed2.gif)126 259.2 Q(\\)162 E
+(--start 920804400 --end 920808000)144 271.2 Q(\\)90 E
+(--vertical-label m/s)144 283.2 Q(\\)168 E 78
+(DEF:myspeed=test.rrd:speed:AVERAGE \\)144 295.2 R
+(CDEF:realspeed=myspeed,1000,)144 307.2 Q/F3 10/Symbol SF(*)A F2(\\)114
+E(LINE2:realspeed#FF0000)144 319.2 Q F0 .244(After vie)108 343.2 R .244
+(wing this)-.25 F/F4 9/Times-Roman@0 SF(GIF)2.744 E F0 2.744(,y)C .244
+(ou notice the `)-2.744 F(`m')-.74 E 2.744('h)-.74 G .245
+(as disappeared. This it what the correct result w)-2.744 F .245
+(ould be. Also,)-.1 F 2.5(al)108 355.2 S
+(abel has been added to the image.)-2.5 E
+(Apart from the things mentioned abo)5 E -.15(ve)-.15 G 2.5(,t).15 G(he)
+-2.5 E F4(GIF)2.5 E F0(should be the same.)2.5 E .04
+(The calculations are in the)108 372 R F4(CDEF)2.54 E F0 .04
+(part and are in Re)2.54 F -.15(ve)-.25 G .039(rse Polish Notation \(")
+.15 F F4(RPN)A F0 .039("\). What it says is: `)B(`tak)-.74 E 2.539(et)
+-.1 G(he)-2.539 E 2.563
+(data source myspeed and the number 1000; multiply those')108 384 R
+2.563('. Don')-.74 F 5.063(tb)-.18 G 2.563(other with)-5.063 F F4(RPN)
+5.063 E F0 2.563(yet, it will be)5.063 F -.15(ex)108 396 S .01
+(plained later on in more detail. Also, you may w).15 F .01
+(ant to read my tutorial on CDEFs and Ste)-.1 F .31 -.15(ve R)-.25 H
+(ader').15 E 2.51(st)-.55 G(uto-)-2.51 E(rial on)108 408 Q F4(RPN)2.5 E
+F0 2.5(.B)C(ut \214rst \214nish this tutorial.)-2.5 E 1.099
+(Hang on! If we can multiply v)108 424.8 R 1.099(alues with 1000, it sh\
+ould also be possible to display kilometers per hour)-.25 F
+(from the same data!)108 436.8 Q 1.6 -.8(To c)108 453.6 T(hange a v).8 E
+(alue that is measured in meters per second:)-.25 E<ad>110.5 465.6 Q F3
+(*)A F0 2.5(-C)C(alculate meters per hour:)-2.5 E -.25(va)12.5 G(lue).25
+E F3(*)2.5 E F0(3600)2.5 E<ad>110.5 477.6 Q F3(*)A F0 2.5(-C)C
+(alculate kilometers per hour: v)-2.5 E(alue / 1000)-.25 E<ad>110.5
+489.6 Q F3(*)A F0 2.5(-T)C(ogether this mak)-3.3 E 25(es: v)-.1 F(alue)
+-.25 E F3(*)2.5 E F0(\(3600/1000\) == v)2.5 E(alue)-.25 E F3(*)2.5 E F0
+(3.6)2.5 E .299(In our e)108 506.4 R .299
+(xample database we made a mistak)-.15 F 2.798(ea)-.1 G .298
+(nd we need to compensate for this by multiplying with 1000.)-2.798 F
+(Applying that correction:)108 518.4 Q<ad>110.5 530.4 Q F3(*)A F0 2.5
+(-v)C(alue)-2.75 E F3(*)2.5 E F0(3.6)2.5 E F3(*)5 E F0(1000 == v)A(alue)
+-.25 E F3(*)2.5 E F0(3600)2.5 E(No)108 547.2 Q 2.5(wl)-.25 G(et')-2.5 E
+2.5(sc)-.55 G(reate this)-2.5 E F4(GIF)2.5 E F0 2.5(,a)C
+(nd add some more magic ...)-2.5 E F2(rrdtool graph speed3.gif)126 564 Q
+(\\)162 E(--start 920804400 --end 920808000)144 576 Q(\\)90 E
+(--vertical-label km/h)144 588 Q(\\)162 E 78
+(DEF:myspeed=test.rrd:speed:AVERAGE \\)144 600 R
+("CDEF:kmh=myspeed,3600,)144 612 Q F3(*)A F2 138("\\)C 108
+(CDEF:fast=kmh,100,GT,kmh,0,IF \\)144 624 R 108
+(CDEF:good=kmh,100,GT,0,kmh,IF \\)144 636 R
+(HRULE:100#0000FF:"Maximum allowed")144 648 Q(\\)84 E
+(AREA:good#00FF00:"Good speed")144 660 Q(\\)114 E
+(AREA:fast#FF0000:"Too fast")144 672 Q F0 .966(This looks much better)
+108 696 R 3.466(.S)-.55 G .966(peed in)-3.466 F F4(KM/H)3.467 E F0 .967
+(and e)3.467 F -.15(ve)-.25 G 3.467(na).15 G 3.467(ne)-3.467 G .967
+(xtra line with the maximum allo)-3.617 F .967(wed speed \(on the)-.25 F
+(road I tra)108 708 Q -.15(ve)-.2 G 2.5(la).15 G(t\). I also changed th\
+e colors used to display speed and changed it from a line into an area.)
+-2.5 E 154.84(24/Oct/99 Last)72 768 R(change: 1.0.8)2.5 E(6)192.34 E EP
+%%Page: 7 7
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF(RRDTUT)72 48 Q -.834(ORIAL \( 1 \))-.18 F
+130.862(rrdtool RRDTUT)133.362 F -.834(ORIAL \( 1 \))-.18 F
+(The calculations are more comple)108 96 Q 2.5(xn)-.15 G -.25(ow)-2.5 G
+2.5(.F)-.4 G(or the `)-2.65 E(`good')-.74 E 2.5('s)-.74 G(peed the)-2.5
+E 2.5(ya)-.15 G(re:)-2.5 E/F1 10/Courier@0 SF
+(Check if kmh is greater than 100)126 112.8 Q 6(\(k)24 G(mh,100 \) GT)-6
+E(If so, return 0, else kmh)126 124.8 Q
+(\(\(\( kmh,100 \) GT \), 0, kmh\) IF)66 E F0 -.15(Fo)108 148.8 S 2.5
+(rt).15 G(he other speed:)-2.5 E F1(Check if kmh is greater than 100)126
+165.6 Q 6(\(k)24 G(mh,100 \) GT)-6 E(If so, return kmh, else return 0)
+126 177.6 Q(\(\(\( kmh,100\) GT \), kmh, 0\) IF)24 E/F2 10/Times-Bold@0
+SF -7.778(GG)108 212.4 S -4.438(rr)7.778 G -4.998(aa)4.438 G -5.558(pp)
+4.998 G -5.558(hh)5.558 G -2.778(ii)5.558 G -4.438(cc)2.778 G 7.776
+-3.888(ss M)4.438 H(Ma)-5.55 E(ag)-4.998 E(gi)-4.998 E(ic)-2.778 E(c)
+-4.438 E F0 2.977(Il)108 229.2 S(ik)-2.977 E 2.977(et)-.1 G 2.977(ob)
+-2.977 G(elie)-2.977 E .777 -.15(ve t)-.25 H .476
+(here are virtually no limits to ho).15 F 2.976(wR)-.25 G .476
+(RDtool graph can manipulate data. I will not e)-2.976 F(xplain)-.15 E
+(ho)108 241.2 Q 2.5(wi)-.25 G 2.5(tw)-2.5 G(orks, b)-2.6 E
+(ut look at the follo)-.2 E(wing)-.25 E/F3 9/Times-Roman@0 SF(GIF)2.5 E
+F0(:)A F1(rrdtool graph speed4.gif)126 258 Q(\\)162 E
+(--start 920804400 --end 920808000)144 270 Q(\\)90 E
+(--vertical-label km/h)144 282 Q(\\)162 E 78
+(DEF:myspeed=test.rrd:speed:AVERAGE \\)144 294 R
+("CDEF:kmh=myspeed,3600,)144 306 Q/F4 10/Symbol SF(*)A F1 138("\\)C 108
+(CDEF:fast=kmh,100,GT,100,0,IF \\)144 318 R 72
+(CDEF:over=kmh,100,GT,kmh,100,-,0,IF \\)144 330 R 108
+(CDEF:good=kmh,100,GT,0,kmh,IF \\)144 342 R
+(HRULE:100#0000FF:"Maximum allowed")144 354 Q(\\)84 E
+(AREA:good#00FF00:"Good speed")144 366 Q(\\)114 E
+(AREA:fast#550000:"Too fast")144 378 Q(\\)126 E
+(STACK:over#FF0000:"Over speed")144 390 Q F0(Let')108 414 Q 2.5(sc)-.55
+G(reate a quick and dirty)-2.5 E F3(HTML)2.5 E F0(page to vie)2.5 E 2.5
+(wt)-.25 G(hree GIFs:)-2.5 E F1
+(<HTML><HEAD><TITLE>Speed</TITLE></HEAD><BODY>)126 430.8 Q
+(<IMG src="speed2.gif" alt="Speed in meters per second">)126 442.8 Q
+(<BR>)126 454.8 Q
+(<IMG src="speed3.gif" alt="Speed in kilometers per hour">)126 466.8 Q
+(<BR>)126 478.8 Q(<IMG src="speed4.gif" alt="Traveled too fast?">)126
+490.8 Q(</BODY></HTML>)126 502.8 Q F0(Name the \214le `)108 526.8 Q
+(`speed.html')-.74 E 2.5('o)-.74 G 2.5(rs)-2.5 G(imilar)-2.5 E 2.5(,a)
+-.4 G(nd vie)-2.5 E 2.5(wi)-.25 G(t.)-2.5 E(No)108 543.6 Q 1.865 -.65
+(w, a)-.25 H .565(ll you ha).65 F .865 -.15(ve t)-.2 H 3.066(od).15 G
+3.066(oi)-3.066 G 3.066(sm)-3.066 G .566(easure the v)-3.066 F .566
+(alues re)-.25 F .566(gularly and update the database.)-.15 F .566
+(When you w)5.566 F .566(ant to vie)-.1 F(w)-.25 E .506
+(the data, recreate the GIFs and mak)108 555.6 R 3.006(es)-.1 G .506
+(ure to refresh them in your bro)-3.006 F(wser)-.25 E 3.006(.\()-.55 G
+.506(Note: just clicking reload may)-3.006 F .12
+(not be enough; Netscape in particular has a problem doing so and you')
+108 567.6 R .121(ll need to click reload while pressing)-.1 F
+(the shift k)108 579.6 Q -.15(ey)-.1 G(\).).15 E F2 -7.218(UU)108 602.4
+S -5.558(pp)7.218 G -5.558(dd)5.558 G -4.998(aa)5.558 G -3.328(tt)4.998
+G -4.438(ee)3.328 G 7.776 -3.888(ss i)4.438 H(in)1.11 E 2.5(nR)-5.558 G
+(Re)-9.718 E(ea)-4.438 E(al)-4.998 E(li)-2.778 E(it)-2.778 E(ty)-3.328 E
+(y)-4.998 E F0 -.8(We)108 619.2 S -1.65 -.5('v e).8 H 4.687
+(already used the `)7.687 F(`update')-.74 E 7.187('c)-.74 G 4.687
+(ommand: it took one or more parameters in the form of)-7.187 F -.74(``)
+108 631.2 S(<time>:<v).74 E(alue>')-.25 E .069('. Y)-.74 F(ou')-1.1 E
+.069(ll be glad to kno)-.1 F 2.569(wt)-.25 G .069
+(hat you can get the current time by \214lling in a `)-2.569 F(`N')-.74
+E 2.569('a)-.74 G 2.569(st)-2.569 G .069(he time.)-2.569 F
+(If you wish, you can also use the `)108 643.2 Q(`time')-.74 E 2.5('f)
+-.74 G(unction in perl.)-2.5 E(The shortest e)5 E
+(xample in this doc :\))-.15 E F1(perl -e 'print time, "\\n" ')126 660 Q
+F0(Ho)108 684 Q 2.5(wy)-.25 G(ou can run a program on re)-2.5 E
+(gular interv)-.15 E(als is)-.25 E F3(OS)2.5 E F0(speci\214c. But here')
+2.5 E 2.5(sa)-.55 G 2.5(ne)-2.5 G(xample in pseudo code:)-2.65 E F1
+(Get the value, put it in variable "$speed")126 700.8 Q
+(rrdtool update speed.rrd N:$speed)126 712.8 Q F0 154.84(24/Oct/99 Last)
+72 768 R(change: 1.0.8)2.5 E(7)192.34 E EP
+%%Page: 8 8
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF(RRDTUT)72 48 Q -.834(ORIAL \( 1 \))-.18 F
+130.862(rrdtool RRDTUT)133.362 F -.834(ORIAL \( 1 \))-.18 F
+(\(Do not try this with our test database, it is used in further e)108
+96 Q(xamples\))-.15 E .355(This is all. Run this script e)108 112.8 R
+-.15(ve)-.25 G .355(ry \214v).15 F 2.855(em)-.15 G .355
+(inutes. When you need to kno)-2.855 F 2.855(ww)-.25 G .355
+(hat the graphics look lik)-2.855 F .355(e, run the)-.1 F -.15(ex)108
+124.8 S(amples abo).15 E -.15(ve)-.15 G 2.5(.Y).15 G
+(ou could put them in a script. After running that script, vie)-3.6 E
+2.5(wi)-.25 G(nde)-2.5 E(x.html)-.15 E/F1 10/Times-Bold@0 SF -5.558(SS)
+108 147.6 S -4.998(oo)5.558 G -8.328(mm)4.998 G 8.876 -4.438(ee w)8.328
+H -.1(wo)-2.78 G(or)-4.898 E(rd)-4.438 E(ds)-5.558 E 2.5(so)-3.888 G(on)
+-7.498 E(n)-5.558 E/F2 9/Times-Bold@0 SF -5.002(SS)2.5 G -6.496(NN)5.002
+G -8.494(MM)6.496 G -5.497(PP)8.494 G F0 2.91(Ic)108 164.4 S .41
+(an imagine v)-2.91 F .41(ery fe)-.15 F 2.91(wp)-.25 G .41
+(eople will be able to get real data from their car e)-2.91 F -.15(ve)
+-.25 G .41(ry \214v).15 F 2.91(em)-.15 G .41(inutes, all other peo-)
+-2.91 F .357(ple will ha)108 176.4 R .657 -.15(ve t)-.2 H 2.857(os).15 G
+.357(ettle for some other kind of counter)-2.857 F 2.856(.Y)-.55 G .356
+(ou could measure the number of pages printed by a)-3.956 F(printer)108
+188.4 Q 3.849(,t)-.4 G 1.349(he cof)-3.849 F 1.349(fee made by the cof)
+-.25 F 1.349(fee machine, a de)-.25 F 1.35
+(vice that counts the electricity used, whate)-.25 F -.15(ve)-.25 G 2.45
+-.55(r. A).15 H -.15(ny).55 G .223
+(incrementing counter can be monitored and graphed using the stuf)108
+200.4 R 2.722(fy)-.25 G .222(ou learned until no)-2.722 F 1.522 -.65
+(w. L)-.25 H .222(ater on we will).65 F .355
+(also be able to monitor other types of v)108 212.4 R .356(alues lik)
+-.25 F 2.856(et)-.1 G 2.856(emperature. Most)-2.856 F .356
+(people will use the counter that k)2.856 F(eeps)-.1 E 1.638
+(track of octets \(bytes\) transfered by a netw)108 224.4 R 1.638
+(ork de)-.1 F 1.638(vice so we ha)-.25 F 1.937 -.15(ve t)-.2 H 4.137(od)
+.15 G 4.137(oj)-4.137 G 1.637(ust that. W)-4.137 F 4.137(ew)-.8 G 1.637
+(ill start with a)-4.137 F .902(description of ho)108 236.4 R 3.402(wt)
+-.25 G 3.402(oc)-3.402 G .902(ollect data.)-3.402 F .902
+(Some people will mak)5.902 F 3.402(ear)-.1 G .902
+(emark that there are tools who can do this)-3.402 F .065
+(data collection for you. The)108 248.4 R 2.564(ya)-.15 G .064
+(re right!)-2.564 F(Ho)5.064 E(we)-.25 E -.15(ve)-.25 G .864 -.4(r, I f)
+.15 H .064(eel it is important that you understand the).4 F 2.564(ya)
+-.15 G .064(re not nec-)-2.564 F(essary)108 260.4 Q 5(.W)-.65 G
+(hen you ha)-5 E .3 -.15(ve t)-.2 H 2.5(od).15 G(etermine wh)-2.5 E 2.5
+(yt)-.05 G(hings went wrong you need to kno)-2.5 E 2.5(wh)-.25 G .5 -.25
+(ow t)-2.5 H(he).25 E 2.5(yw)-.15 G(ork.)-2.6 E 1.101
+(One tool used in the e)108 277.2 R 1.101(xample has been talk)-.15 F
+1.101(ed about v)-.1 F 1.101(ery brie\215y in the be)-.15 F 1.101
+(ginning of this document, it is)-.15 F(called)108 289.2 Q/F3 9
+/Times-Roman@0 SF(SNMP)2.76 E F0 2.76(.I)C 2.76(ti)-2.76 G 2.76(saw)
+-2.76 G .26(ay of talking to equipment. The tool I use belo)-2.86 F
+2.759(wi)-.25 G 2.759(sc)-2.759 G .259(alled `)-2.759 F(`snmpget')-.74 E
+2.759('a)-.74 G .259(nd this is ho)-2.759 F(w)-.25 E(it w)108 301.2 Q
+(orks:)-.1 E/F4 10/Courier@0 SF(snmpget device password OID)126 318 Q F0
+-.15(Fo)108 342 S 2.94(rd).15 G -.25(ev)-2.94 G .44
+(ice you substitute the name, or the).25 F F3(IP)2.94 E F0 .441
+(address, of your de)2.94 F 2.941(vice. F)-.25 F .441(or passw)-.15 F
+.441(ord you use the `)-.1 F(`commu-)-.74 E .522(nity read string')108
+354 R 3.022('a)-.74 G 3.022(si)-3.022 G 3.022(ti)-3.022 G 3.022(sc)
+-3.022 G .522(alled in the)-3.022 F F3(SNMP)3.022 E F0 -.1(wo)3.022 G
+3.022(rld. F).1 F .522(or some de)-.15 F .522(vices the def)-.25 F .521
+(ault of `)-.1 F(`public')-.74 E 3.021('m)-.74 G .521(ight w)-3.021 F
+(ork,)-.1 E(ho)108 366 Q(we)-.25 E -.15(ve)-.25 G 2.504(rt).15 G .004
+(his can be disabled, altered or protected for pri)-2.504 F -.25(va)-.25
+G .305 -.15(cy a).25 H .005(nd security reasons.).15 F .005
+(Read the documentation)5.005 F(that comes with your de)108 378 Q
+(vice or program.)-.25 E(Then there is this third parameter)108 394.8 Q
+2.5(,c)-.4 G(alled)-2.5 E F3(OID)2.5 E F0 2.5(,w)C(hich means `)-2.5 E
+(`object identi\214er')-.74 E('.)-.74 E .531
+(When you start to learn about)108 411.6 R F3(SNMP)3.03 E F0 .53
+(it looks v)3.03 F .53(ery confusing. It isn')-.15 F 3.03(ta)-.18 G .53
+(ll that dif)-3.03 F .53(\214cult when you look at the)-.25 F .118
+(Management Information Base \(")108 423.6 R F3(MIB)A F0 2.618("\). It)B
+.118(is an upside-do)2.618 F .118
+(wn tree that describes data, with a single node as)-.25 F .061
+(the root and from there a number of branches.)108 435.6 R .06
+(These branches end up in another node, the)5.061 F 2.56(yb)-.15 G .06
+(ranch out, etc.)-2.56 F .604(All the branches ha)108 447.6 R .904 -.15
+(ve a n)-.2 H .604(ame and the).15 F 3.104(yf)-.15 G .604
+(orm the path that we follo)-3.104 F 3.104(wa)-.25 G .604(ll the w)
+-3.104 F .604(ay do)-.1 F 3.104(wn. The)-.25 F .604(branches that)3.104
+F .739(we follo)108 459.6 R 3.239(wa)-.25 G .739(re named: iso, or)
+-3.239 F .739(g, dod, internet, mgmt and mib-2.)-.18 F .739
+(These names can also be written do)5.739 F .738(wn as)-.25 F
+(numbers and are 1 3 6 1 2 1.)108 471.6 Q F4
+(iso.org.dod.internet.mgmt.mib-2 \(1.3.6.1.2.1\))126 488.4 Q F0 .547(Th\
+ere is a lot of confusion about the leading dot that some programs use.)
+108 512.4 R .547(There is)5.547 F/F5 10/Symbol SF(*)3.047 E F0(no)A F5
+(*)A F0 .547(leading dot in an)3.047 F F3(OID)108 524.4 Q F0 5.116(.H)C
+-.25(ow)-5.116 G -2.15 -.25(ev e).25 H .916 -.4(r, s).25 H .116
+(ome programs can use abo).4 F .416 -.15(ve p)-.15 H .116
+(art of OIDs as a def).15 F 2.615(ault. T)-.1 F 2.615(oi)-.8 G .115
+(ndicate the dif)-2.615 F .115(ference between)-.25 F(abbre)108 536.4 Q
+.561(viated OIDs and full OIDs the)-.25 F 3.061(yn)-.15 G .562
+(eed a leading dot when you specify the complete)-3.061 F F3(OID)3.062 E
+F0 5.562(.O)C .562(ften those)-5.562 F 1.13(programs will lea)108 548.4
+R 1.43 -.15(ve o)-.2 H 1.13(ut the def).15 F 1.13
+(ault portion when returning the data to you.)-.1 F 2.73 -.8(To m)6.13 H
+(ak).8 E 3.63(et)-.1 G 1.13(hings w)-3.63 F 1.13(orse, the)-.1 F(y)-.15
+E(ha)108 560.4 Q .3 -.15(ve s)-.2 H -2.15 -.25(ev e).15 H(ral def).25 E
+(ault pre\214x)-.1 E(es ...)-.15 E .722
+(Right, lets continue to the start of our)108 577.2 R F3(OID)3.223 E F0
+3.223(:w)C 3.223(eh)-3.223 G .723
+(ad 1.3.6.1.2.1 From there, we are especially interested in)-3.223 F
+(the branch `)108 589.2 Q(`interf)-.74 E(aces')-.1 E 2.5('w)-.74 G
+(hich has number 2 \(e)-2.5 E 2.5(g1)-.15 G
+(.3.6.1.2.1.2 or 1.3.6.1.2.1.interf)-2.5 E(aces\).)-.1 E .496
+(First, we ha)108 606 R .796 -.15(ve t)-.2 H 2.996(og).15 G .496
+(et some)-2.996 F F3(SNMP)2.996 E F0 .496
+(program. First look if there is a pre-compiled package a)2.996 F -.25
+(va)-.2 G .495(ilable for your).25 F F3(OS)108 618 Q F0 3.655(.T)C 1.155
+(his is the preferred w)-3.655 F(ay)-.1 E 6.155(.I)-.65 G 3.655(fn)
+-6.155 G 1.155(ot, you will ha)-3.655 F 1.455 -.15(ve t)-.2 H 3.655(og)
+.15 G 1.155(et yourself the sources and compile those.)-3.655 F(The)
+6.156 E .277(Internet is full of sources, programs etc. Find informatio\
+n using a search engine or whate)108 630 R -.15(ve)-.25 G 2.777(ry).15 G
+.277(ou prefer)-2.777 F 2.777(.A)-.55 G(s)-2.777 E 2.5(as)108 642 S
+(uggestion: look for)-2.5 E F3(CMU)2.5 E F0<ad>A F3(SNMP)A F0 5(.I)C 2.5
+(ti)-5 G 2.5(sc)-2.5 G(ommonly used.)-2.5 E .685
+(Assume you got the program. First try to collect some data that is a)
+108 658.8 R -.25(va)-.2 G .685(ilable on most systems. Remember:).25 F(\
+there is a short name for the part of the tree that interests us most i\
+n the w)108 670.8 Q(orld we li)-.1 E .3 -.15(ve i)-.25 H(n!).15 E 3.303
+(Iw)108 687.6 S .803(ill use the short v)-3.303 F .802
+(ersion as I think this document is lar)-.15 F .802
+(ge enough as it is. If that doesn')-.18 F 3.302(tw)-.18 G .802
+(ork for you,)-3.402 F .46(pre\214x with .1.3.6.1.2.1 and try ag)108
+699.6 R 2.96(ain. Also,)-.05 F .461(Read The Fine Manual.)2.961 F .461
+(Skip the parts you cannot understand)5.461 F
+(yet, you should be able to \214nd out ho)108 711.6 Q 2.5(wt)-.25 G 2.5
+(os)-2.5 G(tart the program and use it.)-2.5 E 154.84(24/Oct/99 Last)72
+768 R(change: 1.0.8)2.5 E(8)192.34 E EP
+%%Page: 9 9
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF(RRDTUT)72 48 Q -.834(ORIAL \( 1 \))-.18 F
+130.862(rrdtool RRDTUT)133.362 F -.834(ORIAL \( 1 \))-.18 F/F1 10
+/Courier@0 SF(snmpget myrouter public system.sysdescr.0)126 96 Q F0 .442
+(The de)108 120 R .441
+(vice should answer with a description of itself, perhaps empty)-.25 F
+5.441(.U)-.65 G .441(ntil you got a v)-5.441 F .441(alid answer from a)
+-.25 F(de)108 132 Q(vice, perhaps using a dif)-.25 E(ferent `)-.25 E
+(`passw)-.74 E(ord')-.1 E(', or a dif)-.74 E(ferent de)-.25 E
+(vice, there is no point in continuing.)-.25 E F1
+(snmpget myrouter public interfaces.ifnumber.0)126 148.8 Q F0 .13
+(Hopefully you get a number as a result, the number of interf)108 172.8
+R 2.631(aces. If)-.1 F .131(so, you can carry on and try a dif)2.631 F
+(ferent)-.25 E(program called `)108 184.8 Q(`snmpw)-.74 E(alk')-.1 E('.)
+-.74 E F1(snmpwalk myrouter public interfaces.iftable.ifentry.ifdescr)
+126 201.6 Q F0(If it returns with a list of interf)108 225.6 Q
+(aces, you')-.1 E(re almost there.)-.5 E(Here')5 E 2.5(sa)-.55 G 2.5(ne)
+-2.5 G(xample:)-2.65 E([user@host /home/ale)115.5 237.6 Q(x]$ snmpw)-.15
+E(alk cisco public 2.2.1.2)-.1 E F1
+(interfaces.ifTable.ifEntry.ifDescr.1 = "BRI0: B-Channel 1")126 254.4 Q
+(interfaces.ifTable.ifEntry.ifDescr.2 = "BRI0: B-Channel 2")126 266.4 Q
+(interfaces.ifTable.ifEntry.ifDescr.3 = "BRI0" Hex: 42 52 49 30)126
+278.4 Q(interfaces.ifTable.ifEntry.ifDescr.4 = "Ethernet0")126 290.4 Q
+(interfaces.ifTable.ifEntry.ifDescr.5 = "Loopback0")126 302.4 Q F0 .276
+(On this cisco equipment, I w)108 326.4 R .275(ould lik)-.1 F 2.775(et)
+-.1 G 2.775(om)-2.775 G .275(onitor the `)-2.775 F(`Ethernet0')-.74 E
+2.775('i)-.74 G(nterf)-2.775 E .275(ace and see that it is number four)
+-.1 F 2.775(.I)-.55 G(try:)108 338.4 Q F1
+([user@host /home/alex]$ snmpget cisco public 2.2.1.10.4 2.2.1.16.4)126
+355.2 Q(interfaces.ifTable.ifEntry.ifInOctets.4 = 2290729126)126 379.2 Q
+(interfaces.ifTable.ifEntry.ifOutOctets.4 = 1256486519)126 391.2 Q F0
+(So no)108 415.2 Q 2.5(wIh)-.25 G -2.25 -.2(av e)-2.5 H(tw)2.7 E 2.5(oO)
+-.1 G(IDs to monitor and the)-2.5 E 2.5(ya)-.15 G
+(re \(in full, this time\):)-2.5 E F1(1.3.6.1.2.1.2.2.1.10)126 432 Q F0
+(and)108 456 Q F1(1.3.6.1.2.1.2.2.1.16)126 472.8 Q F0
+(both with an interf)108 496.8 Q(ace number of 4.)-.1 E(Don')108 513.6 Q
+2.546(tg)-.18 G .046(et fooled, this w)-2.546 F(asn')-.1 E 2.546(tm)-.18
+G 2.546<798c>-2.546 G .046(rst try)-2.546 F 2.546(.I)-.65 G 2.546(tt)
+-2.546 G .046
+(ook some time for me too to understand what all these numbers)-2.546 F
+.91(mean, it does help a lot when the)108 525.6 R 3.41(yg)-.15 G .909
+(et translated into descripti)-3.41 F 1.209 -.15(ve t)-.25 H -.15(ex).15
+G .909(t... At least, when people are talking).15 F .251
+(about MIBs and OIDs you kno)108 537.6 R 2.751(ww)-.25 G .251(hat it')
+-2.751 F 2.751(sa)-.55 G .251(ll about.)-2.751 F .251(Do not for)5.251 F
+.252(get the interf)-.18 F .252(ace number \(0 if it is not inter)-.1 F
+(-)-.2 E -.1(fa)108 549.6 S(ce dependent\) and try snmpw).1 E
+(alk if you don')-.1 E 2.5(tg)-.18 G(et an answer from snmpget.)-2.5 E
+.3(If you understand abo)108 566.4 R .6 -.15(ve p)-.15 H .3
+(art, and get numbers from your de).15 F .299
+(vice, continue on with this tutorial. If not, then)-.25 F
+(go back and re-read this part.)108 578.4 Q/F2 10/Times-Bold@0 SF 14.436
+-7.218(AA RR)108 601.2 T -4.438(ee)7.218 G -4.998(aa)4.438 G 5.556
+-2.778(ll W)4.998 H -.75(Wo)-7.22 G(or)-4.248 E(rl)-4.438 E(ld)-2.778 E
+2.5(dE)-5.558 G(Ex)-9.168 E(xa)-4.998 E(am)-4.998 E(mp)-8.328 E(pl)
+-5.558 E(le)-2.778 E(e)-4.438 E F0 .405(Let the fun be)108 618 R .405
+(gin. First, create a ne)-.15 F 2.905(wd)-.25 G .406
+(atabase. It contains data from tw)-2.905 F 2.906(oc)-.1 G .406
+(ounters, called input and output.)-2.906 F .285
+(The data is put into archi)108 630 R -.15(ve)-.25 G 2.785(st).15 G .285
+(hat a)-2.785 F -.15(ve)-.2 G .285(rage it. The).15 F 2.784(yt)-.15 G
+(ak)-2.784 E 2.784(e1)-.1 G 2.784(,6)-2.784 G 2.784(,2)-2.784 G 2.784
+(4o)-2.784 G 2.784(r2)-2.784 G .284(88 samples at a time.)-2.784 F(The)
+5.284 E 2.784(ya)-.15 G .284(lso go into)-2.784 F(archi)108 642 Q -.15
+(ve)-.25 G 2.946(st).15 G .446(hat k)-2.946 F .447
+(eep the maximum numbers. This will be e)-.1 F .447
+(xplained later on. The time in-between samples is)-.15 F
+(300 seconds, a good starting point, which is the same as \214v)108 654
+Q 2.5(em)-.15 G(inutes.)-2.5 E F1 6(1s)114 670.8 S
+(ample "averaged" stays 1 period of 5 minutes)-6 E 6(6s)114 682.8 S
+(amples averaged become one average on 30 minutes)-6 E
+(24 samples averaged become one average on 2 hours)114 694.8 Q
+(288 samples averaged become one average on 1 day)114 706.8 Q F0
+(Lets try to be compatible with)108 730.8 Q/F3 9/Times-Roman@0 SF(MR)2.5
+E(TG)-.54 E F0(:)A F3(MR)2.5 E(TG)-.54 E F0(stores about the follo)2.5 E
+(wing amount of data:)-.25 E 154.84(24/Oct/99 Last)72 778.8 R
+(change: 1.0.8)2.5 E(9)192.34 E EP
+%%Page: 10 10
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF(RRDTUT)72 48 Q -.834(ORIAL \( 1 \))-.18 F
+130.862(rrdtool RRDTUT)133.362 F -.834(ORIAL \( 1 \))-.18 F/F1 10
+/Courier@0 SF(600 5-minute samples:)114 96 Q 18(2d)24 G(ays and 2 hours)
+-18 E(600 30-minute samples:)114 108 Q(12.5 days)12 E
+(600 2-hour samples:)114 120 Q 12(50 days)30 F(600 1-day samples:)114
+132 Q 12(732 days)30 F F0 .209
+(These ranges are appended so the total amount of data k)108 156 R .209
+(ept is approximately 797 days.)-.1 F .208(RRDtool stores the)5.208 F
+.13(data dif)108 168 R(ferently)-.25 E 2.63(,i)-.65 G 2.63(td)-2.63 G
+(oesn')-2.63 E 2.63(ts)-.18 G .13(tart the `)-2.63 F(`weekly')-.74 E
+2.63('a)-.74 G(rchi)-2.63 E .43 -.15(ve w)-.25 H .13(here the `).15 F
+(`daily')-.74 E 2.63('a)-.74 G(rchi)-2.63 E .43 -.15(ve s)-.25 H 2.63
+(topped. F).15 F .13(or both archi)-.15 F -.15(ve)-.25 G(s).15 E
+(the most recent data will be near `)108 180 Q(`no)-.74 E(w')-.25 E 2.5
+('a)-.74 G(nd therefore we will need to k)-2.5 E(eep more data than)-.1
+E/F2 9/Times-Roman@0 SF(MR)2.5 E(TG)-.54 E F0(does!)2.5 E 1.6 -.8(We w)
+108 196.8 T(ill need:).8 E F1(600 samples of 5 minutes)114 213.6 Q
+(\(2 days and 2 hours\))12 E
+(700 samples of 30 minutes \(2 days and 2 hours, plus 12.5 days\))114
+225.6 Q(775 samples of 2 hours)114 237.6 Q(\(above + 50 days\))24 E
+(797 samples of 1 day)114 249.6 Q
+(\(above + 732 days, rounded up to 797\))36 E
+(rrdtool create myrouter.rrd)126 273.6 Q(\\)54 E 12
+(DS:input:COUNTER:600:U:U \\)180 285.6 R 6(DS:output:COUNTER:600:U:U \\)
+180 297.6 R 30(RRA:AVERAGE:0.5:1:600 \\)180 309.6 R 30
+(RRA:AVERAGE:0.5:6:700 \\)180 321.6 R 24(RRA:AVERAGE:0.5:24:775 \\)180
+333.6 R 18(RRA:AVERAGE:0.5:288:797 \\)180 345.6 R 54
+(RRA:MAX:0.5:1:600 \\)180 357.6 R 54(RRA:MAX:0.5:6:700 \\)180 369.6 R 48
+(RRA:MAX:0.5:24:775 \\)180 381.6 R(RRA:MAX:0.5:288:797)180 393.6 Q F0
+(Ne)108 417.6 Q .826
+(xt thing to do is collect data and store it. Here is an e)-.15 F 3.326
+(xample. It)-.15 F .826(is written partially in pseudo code so)3.326 F
+(you will ha)108 429.6 Q .3 -.15(ve t)-.2 H 2.5<6f8c>.15 G
+(nd out what to do e)-2.5 E(xactly on your)-.15 E F2(OS)2.5 E F0(to mak)
+2.5 E 2.5(ei)-.1 G 2.5(tw)-2.5 G(ork.)-2.6 E F1
+(while not the end of the universe)126 446.4 Q(do)126 458.4 Q
+(get result of)144 470.4 Q(snmpget router community 2.2.1.10.4)162 482.4
+Q(into variable $in)144 494.4 Q(get result of)144 506.4 Q
+(snmpget router community 2.2.1.16.4)162 518.4 Q(into variable $out)144
+530.4 Q(rrdtool update myrouter.rrd N:$in:$out)144 554.4 Q
+(wait for 5 minutes)144 578.4 Q(done)126 590.4 Q F0
+(Then, after collecting data for a day)108 614.4 Q 2.5(,t)-.65 G
+(ry to create an image using:)-2.5 E F1
+(rrdtool graph myrouter-day.gif --start -86400 \\)126 631.2 Q
+(DEF:inoctets=myrouter.rrd:input:AVERAGE \\)180 643.2 Q
+(DEF:outoctets=myrouter.rrd:output:AVERAGE \\)180 655.2 Q
+(AREA:inoctets#00FF00:"In traffic" \\)180 667.2 Q
+(LINE1:outoctets#0000FF:"Out traffic")180 679.2 Q F0 .445
+(This should produce a picture with one day w)108 703.2 R .446
+(orth of traf)-.1 F 2.946(\214c. One)-.25 F .446
+(day is 24 hours of 60 minutes of 60 sec-)2.946 F 1.108(onds: 24)108
+715.2 R/F3 10/Symbol SF(*)A F0(60)A F3(*)A F0 1.108
+(60=86400, we start at no)B 3.607(wm)-.25 G 1.107(inus 86400 seconds. W)
+-3.607 F 3.607(ed)-.8 G 1.107(e\214ne \(with DEFs\) inoctets and out-)
+-3.607 F .36(octets as the a)108 727.2 R -.15(ve)-.2 G .36(rage v).15 F
+.36(alues from the database myrouter)-.25 F .36(.rrd and dra)-.55 F 2.86
+(wa)-.15 G 2.86(na)-2.86 G .36(rea for the `)-2.86 F(`in')-.74 E 2.86
+('t)-.74 G(raf)-2.86 E .36(\214c and a line)-.25 F 154.84
+(24/Oct/99 Last)72 775.2 R(change: 1.0.8)2.5 E(10)187.34 E EP
+%%Page: 11 11
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF(RRDTUT)72 48 Q -.834(ORIAL \( 1 \))-.18 F
+130.862(rrdtool RRDTUT)133.362 F -.834(ORIAL \( 1 \))-.18 F(for the `)
+108 96 Q(`out')-.74 E 2.5('t)-.74 G(raf)-2.5 E(\214c.)-.25 E -.6(Vi)108
+112.8 S 1.135 -.25(ew t).6 H .635(he image and k).25 F .635
+(eep logging data for a fe)-.1 F 3.135(wm)-.25 G .635(ore days.)-3.135 F
+.635(If you lik)5.635 F .635(e, you could try the e)-.1 F .635
+(xamples from)-.15 F(the test database and see if you can get v)108
+124.8 Q(arious options and calculations w)-.25 E(orking.)-.1 E
+(Suggestion:)108 141.6 Q .34
+(Display in bytes per second and in bits per second. Mak)108 158.4 R
+2.841(et)-.1 G .341(he Ethernet graphics go red if the)-2.841 F 2.841
+(ya)-.15 G .341(re o)-2.841 F -.15(ve)-.15 G 2.841(rf).15 G(our)-2.841 E
+(me)108 170.4 Q -.05(ga)-.15 G(bits per second.).05 E/F1 10/Times-Bold@0
+SF -7.218(CC)108 193.2 S -4.998(oo)7.218 G -5.558(nn)4.998 G -3.888(ss)
+5.558 G -4.998(oo)3.888 G -2.778(ll)4.998 G -2.778(ii)2.778 G -5.558(dd)
+2.778 G -4.998(aa)5.558 G -3.328(tt)4.998 G -2.778(ii)3.328 G -4.998(oo)
+2.778 G 11.116 -5.558(nn F)4.998 H(Fu)-.55 E(un)-5.558 E(nc)-5.558 E(ct)
+-4.438 E(ti)-3.328 E(io)-2.778 E(on)-4.998 E(ns)-5.558 E(s)-3.888 E F0
+3.141(Af)108 210 S 1.141 -.25(ew p)-3.141 H .641
+(aragraphs back I mentioned the possibility of k).25 F .64
+(eeping the maximum v)-.1 F .64(alues instead of the a)-.25 F -.15(ve)
+-.2 G(rage).15 E -.25(va)108 222 S(lues. Let').25 E 2.5(sg)-.55 G 2.5
+(oi)-2.5 G(nto this a bit more.)-2.5 E .802(Recall all the stuf)108
+238.8 R 3.302(fa)-.25 G .802(bout the speed of the car)-3.302 F 3.303
+(.S)-.55 G .803(uppose we dro)-3.303 F 1.103 -.15(ve a)-.15 H 3.303(t1)
+.15 G(44)-3.303 E/F2 9/Times-Roman@0 SF(KM/H)3.303 E F0 .803
+(during 5 minutes and then)3.303 F 1.031
+(were stopped by the police for 25 minutes.)108 250.8 R 1.031
+(At the end of the lecture we w)6.031 F 1.031(ould tak)-.1 F 3.531(eo)
+-.1 G 1.031(ur laptop and cre-)-3.531 F(ate+vie)108 262.8 Q 3.209(wt)
+-.25 G .709(he image tak)-3.209 F .71
+(en from the database. If we look at the second)-.1 F F2(RRA)3.21 E F0
+.71(we did create, we w)3.21 F .71(ould ha)-.1 F -.15(ve)-.2 G 1.034
+(the a)108 274.8 R -.15(ve)-.2 G 1.034
+(rage from 6 samples. The samples measured w).15 F 1.033
+(ould be 144+0+0+0+0+0=144, di)-.1 F 1.033(vided by 30 min-)-.25 F .938
+(utes, corrected for the error by 1000, translated into)108 286.8 R F2
+(KM/H)3.439 E F0 3.439(,w)C .939(ith a result of 24)-3.439 F F2(KM/H)
+3.439 E F0 5.939(.I)C -.1(wo)-2.5 G .939(uld still get a).1 F(tick)108
+298.8 Q(et b)-.1 E(ut not for speeding an)-.2 E(ymore :\))-.15 E(Ob)108
+315.6 Q(viously)-.15 E 3.589(,i)-.65 G 3.589(nt)-3.589 G 1.089
+(his case, we shouldn')-3.589 F 3.589(tl)-.18 G 1.089(ook at the a)
+-3.589 F -.15(ve)-.2 G 1.089(rages. In some cases the).15 F 3.589(ya)
+-.15 G 1.089(re handy)-3.589 F 3.589(.I)-.65 G 3.589(fy)-3.589 G 1.089
+(ou w)-3.589 F 1.088(ant to)-.1 F(kno)108 327.6 Q 2.799(wh)-.25 G .799
+-.25(ow m)-2.799 H(uch).25 E F2(KM)2.799 E F0 .299(you had tra)2.799 F
+-.15(ve)-.2 G .299(led, the picture w).15 F .3
+(ould be the right one to look at. On the other hand, for)-.1 F .859
+(the speed that we tra)108 339.6 R -.15(ve)-.2 G .859
+(led at, the maximum number seen is much more v).15 F .859
+(aluable. \(later we will see more)-.25 F(types\))108 351.6 Q .341
+(It is the same for data. If you w)108 368.4 R .341(ant to kno)-.1 F
+2.841(wt)-.25 G .341(he amount, look at the a)-2.841 F -.15(ve)-.2 G
+.342(rages. If you w).15 F .342(ant to kno)-.1 F 2.842(wt)-.25 G .342
+(he rate,)-2.842 F .011(look at the maximum.)108 380.4 R(Ov)5.011 E .011
+(er time, the)-.15 F 2.511(yw)-.15 G .011(ill gro)-2.511 F 2.511(wa)-.25
+G .011(part more and more. In the last database we ha)-2.511 F .311 -.15
+(ve c)-.2 H(reated,).15 E .57(there are tw)108 392.4 R 3.07(oa)-.1 G
+(rchi)-3.07 E -.15(ve)-.25 G 3.07(st).15 G .57(hat k)-3.07 F .57
+(eep data per day)-.1 F 3.071(.T)-.65 G .571(he archi)-3.071 F .871 -.15
+(ve t)-.25 H .571(hat k).15 F .571(eeps a)-.1 F -.15(ve)-.2 G .571
+(rages will sho).15 F 3.071(wl)-.25 G 1.071 -.25(ow n)-3.071 H .571
+(umbers, the).25 F(archi)108 404.4 Q .762 -.15(ve t)-.25 H .462(hat sho)
+.15 F .461(ws maxima will ha)-.25 F .761 -.15(ve h)-.2 H .461
+(igher numbers.).15 F -.15(Fo)5.461 G 2.961(rm).15 G 2.961(yc)-2.961 G
+.461(ar this w)-2.961 F .461(ould translate in a)-.1 F -.15(ve)-.2 G
+.461(rages per day).15 F .28(of 96/24=4)108 416.4 R F2(KM/H)2.78 E F0
+.28(\(as I tra)2.78 F -.15(ve)-.2 G 2.78(la).15 G .28
+(bout 94 kilometers on a day\) during week days, and maximum of 120)
+-2.78 F F2(KM/H)2.781 E F0(on weekdays \(my top speed that I reach e)108
+428.4 Q -.15(ve)-.25 G(ry day\).).15 E .207(Big dif)108 445.2 R .206(fe\
+rence. Do not look at the second graph to estimate the distances that I\
+ tra)-.25 F -.15(ve)-.2 G 2.706(la).15 G .206(nd do not look at the)
+-2.706 F .67(\214rst graph to estimate my speed. This will w)108 457.2 R
+.671(ork if the samples are close together)-.1 F 3.171(,a)-.4 G 3.171
+(st)-3.171 G(he)-3.171 E 3.171(ya)-.15 G .671(re in \214v)-3.171 F 3.171
+(em)-.15 G(in-)-3.171 E(utes, b)108 469.2 Q(ut not if you a)-.2 E -.15
+(ve)-.2 G(rage.).15 E .626
+(On some days, I go for a long ride. If I go across Europe and tra)108
+486 R -.15(ve)-.2 G 3.126(lf).15 G .626(or o)-3.126 F -.15(ve)-.15 G
+3.126(r1).15 G 3.126(2h)-3.126 G .626(ours, the \214rst graph will)
+-3.126 F .866(rise to about 60)108 498 R F2(KM/H)3.366 E F0 3.366(.T)C
+.866(he second one will sho)-3.366 F 3.366(w1)-.25 G(80)-3.366 E F2
+(KM/H)3.366 E F0 3.366(.T)C .866(his means that I tra)-3.366 F -.15(ve)
+-.2 G .866(led a distance of 60).15 F F2(KM/H)108 510 Q F0 1.495
+(times 24 H = 1440)3.995 F F2(KM)3.994 E F0 3.994(.Id)C 1.494
+(id this with a higher speed and a maximum around 180)-3.994 F F2(KM/H)
+3.994 E F0 3.994(.T)C(his)-3.994 E(doesn')108 522 Q 2.882(tm)-.18 G .382
+(ean that I tra)-2.882 F -.15(ve)-.2 G .383
+(led for 8 hours at a constant speed of 180).15 F F2(KM/H)2.883 E F0
+5.383(!T)2.883 G .383(his is a real e)-5.383 F .383(xample: go with)-.15
+F .134(the \215o)108 534 R 2.634(wt)-.25 G .134(hrough German)-2.634 F
+2.634(y\()-.15 G -.1(fa)-2.634 G .134(st!\) and stop a fe).1 F 2.633(wt)
+-.25 G .133(imes for g)-2.633 F .133(as and cof)-.05 F .133(fee. Dri)
+-.25 F .433 -.15(ve s)-.25 H(lo).15 E .133(wly through Austria and)-.25
+F .244
+(the Netherlands. Be careful in the mountains and villages. If you w)108
+546 R .245(ould look at the graphs created from the)-.1 F<8c76>108 558 Q
+.487(e-minute a)-.15 F -.15(ve)-.2 G .487(rages you w).15 F .487
+(ould get a totally dif)-.1 F .487(ferent picture. Y)-.25 F .486(ou w)
+-1.1 F .486(ould see the same v)-.1 F .486(alues on the a)-.25 F -.15
+(ve)-.2 G -.2(r-).15 G 1.418(age and maximum graphs \(pro)108 570 R
+1.419(vided I measured e)-.15 F -.15(ve)-.25 G 1.419(ry 300 seconds\).)
+.15 F -1.1(Yo)6.419 G 3.919(uw)1.1 G 1.419(ould be able to see when I)
+-4.019 F 1.045(stopped, when I w)108 582 R 1.045(as in top gear)-.1 F
+3.545(,w)-.4 G 1.045(hen I dro)-3.545 F 1.345 -.15(ve ove)-.15 H 3.544
+(rf).15 G 1.044(ast hiw)-3.644 F 1.044
+(ays etc. The granularity of the data is much)-.1 F(higher)108 594 Q
+2.66(,s)-.4 G 2.66(oy)-2.66 G .16(ou can see more. Ho)-2.66 F(we)-.25 E
+-.15(ve)-.25 G .96 -.4(r, t).15 H .16(his tak).4 F .16
+(es 12 samples per hour)-.1 F 2.66(,o)-.4 G 2.66(r2)-2.66 G .16(88 v)
+-2.66 F .16(alues per day)-.25 F 2.66(,s)-.65 G 2.66(oi)-2.66 G 2.66(tw)
+-2.66 G .16(ould be)-2.76 F .345(too much to k)108 606 R .345
+(eep for a long period of time. Therefore we a)-.1 F -.15(ve)-.2 G .345
+(rage it, e).15 F -.15(ve)-.25 G .345(ntually to one v).15 F .345
+(alue per day)-.25 F 2.845(.F)-.65 G(rom)-2.845 E(this one v)108 618 Q
+(alue, we cannot see much detail.)-.25 E(Mak)108 634.8 Q 2.574(es)-.1 G
+.074(ure you understand the last fe)-2.574 F 2.574(wp)-.25 G .074
+(aragraphs. There is no v)-2.574 F .074(alue in only a line and a fe)
+-.25 F 2.575(wa)-.25 G .075(xis, you need)-2.575 F(to kno)108 646.8 Q
+2.5(ww)-.25 G(hat the)-2.5 E 2.5(ym)-.15 G
+(ean and interpret the data in a good w)-2.5 E(ay)-.1 E 2.5(.T)-.65 G
+(his is true for all data.)-2.5 E .459(The biggest mistak)108 663.6 R
+2.959(ey)-.1 G .459(ou can mak)-2.959 F 2.959(ei)-.1 G 2.959(st)-2.959 G
+2.959(ou)-2.959 G .458
+(se the collected data for something that it is not suitable for)-2.959
+F 2.958(.Y)-.55 G(ou)-4.058 E -.1(wo)108 675.6 S(uld be better of).1 E
+2.5(fi)-.25 G 2.5(fy)-2.5 G(ou w)-2.5 E(ould not ha)-.1 E .3 -.15(ve t)
+-.2 H(he graphics at all in that case.).15 E 154.84(24/Oct/99 Last)72
+768 R(change: 1.0.8)2.5 E(11)187.34 E EP
+%%Page: 12 12
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF(RRDTUT)72 48 Q -.834(ORIAL \( 1 \))-.18 F
+130.862(rrdtool RRDTUT)133.362 F -.834(ORIAL \( 1 \))-.18 F/F1 10
+/Times-Bold@0 SF -6.668(LL)108 96 S -4.438(ee)6.668 G -3.328(tt)4.438 G
+3.786 -3.328('' s)3.328 H 2.5(sr)-.56 G -.18(re)-6.938 G -.15(ev)-4.258
+G(vi)-4.848 E(ie)-2.778 E(ew)-4.438 E 2.5(ww)-7.218 G(wh)-9.718 E(ha)
+-5.558 E(at)-4.998 E 2.5(ty)-3.328 G -.25(yo)-7.498 G(ou)-4.748 E 2.5
+(un)-5.558 G(no)-8.058 E -.1(ow)-4.998 G 2.5(ws)-7.118 G(sh)-6.388 E(ho)
+-5.558 E(ou)-4.998 E(ul)-5.558 E(ld)-2.778 E 2.5(dk)-5.558 G(kn)-8.058 E
+(no)-5.558 E -.1(ow)-4.998 G -.7(w.)-7.118 G(.)-1.798 E F0 -1.1(Yo)108
+112.8 S 3.019(un)1.1 G 1.019 -.25(ow k)-3.019 H(no).25 E 3.019(wh)-.25 G
+1.019 -.25(ow t)-3.019 H 3.019(oc).25 G .519(reate a database. Y)-3.019
+F .52(ou can put the numbers in it, get them out ag)-1.1 F .52
+(ain by creating an)-.05 F .991
+(image, do math on the data from the database and vie)108 124.8 R 3.491
+(wt)-.25 G .991(he outcome instead of the ra)-3.491 F 3.491(wd)-.15 G
+3.491(ata. Y)-3.491 F .991(ou kno)-1.1 F(w)-.25 E(about the dif)108
+136.8 Q(ference between a)-.25 E -.15(ve)-.2 G
+(rages and maxima, and when to use which \(or at least you ha).15 E .3
+-.15(ve a)-.2 H 2.5(ni).15 G(dea\).)-2.5 E .092
+(RRDtool can do more than what we ha)108 153.6 R .392 -.15(ve l)-.2 H
+.092(earned up to no).15 F 1.392 -.65(w. B)-.25 H .092
+(efore you continue with the rest of this doc, I).65 F .104(recommend t\
+hat you reread from the start and try some modi\214cations on the e)108
+165.6 R .103(xamples. Mak)-.15 F 2.603(es)-.1 G .103(ure you fully)
+-2.603 F .142(understand e)108 177.6 R -.15(ve)-.25 G .142
+(rything. It will be w).15 F .142(orth the ef)-.1 F .142
+(fort and helps you not only with the rest of this doc b)-.25 F .143
+(ut also in)-.2 F
+(your day to day monitoring long after you read this introduction.)108
+189.6 Q F1 -7.218(DD)108 212.4 S -4.998(aa)7.218 G -3.328(tt)4.998 G
+9.996 -4.998(aa S)3.328 H(So)-.56 E(ou)-4.998 E(ur)-5.558 E -.18(rc)
+-4.438 G(ce)-4.258 E 2.5(eT)-4.438 G -.74(Ty)-9.168 G(yp)-4.258 E(pe)
+-5.558 E(es)-4.438 E(s)-3.888 E F0 .206(All right, you feel lik)108
+229.2 R 2.706(ec)-.1 G .206(ontinuing. W)-2.706 F .205
+(elcome back and get ready for an increased speed in the e)-.8 F .205
+(xamples and)-.15 F -.15(ex)108 241.2 S(planation.).15 E -1.1(Yo)108 258
+S 2.599(uk)1.1 G(no)-2.599 E 2.599(wt)-.25 G .099(hat in order to vie)
+-2.599 F 2.599(wac)-.25 G .099(ounter o)-2.599 F -.15(ve)-.15 G 2.599
+(rt).15 G .099(ime, you ha)-2.599 F .399 -.15(ve t)-.2 H 2.599(ot).15 G
+(ak)-2.599 E 2.599(et)-.1 G .299 -.1(wo n)-2.599 H .099(umbers and di).1
+F .099(vide the dif)-.25 F(ference)-.25 E .52
+(of them between the time lapsed.)108 270 R .52(This mak)5.52 F .52
+(es sense for the e)-.1 F .52(xamples I g)-.15 F -2.25 -.2(av e)-.05 H
+.52(you b)3.22 F .52(ut there are other possi-)-.2 F 2.997(bilities. F)
+108 282 R .497(or instance, I'm able to retrie)-.15 F .798 -.15(ve t)
+-.25 H .498
+(he temperature from my router in three places namely the inlet,).15 F
+.901(the so called hot-spot and the e)108 294 R 3.401(xhaust. These)-.15
+F -.25(va)3.401 G .901(lues are not counters.).25 F .901(If I tak)5.901
+F 3.401(et)-.1 G .901(he dif)-3.401 F .901(ference of the tw)-.25 F(o)
+-.1 E .715(samples and di)108 306 R .715(vide that by 300 seconds I w)
+-.25 F .715(ould be asking for the temperature change per second.)-.1 F
+(Hope-)5.716 E
+(fully this is zero! If not, the computerroom is on \214re :\))108 318 Q
+.503(So, what can we do ?)108 334.8 R 2.102 -.8(We c)5.503 H .502
+(an tell RRDtool to store the v).8 F .502
+(alues we measure directly as the)-.25 F 3.002(ya)-.15 G .502
+(re \(this is not)-3.002 F .114(entirely true b)108 346.8 R .114
+(ut close enough\). The graphs we mak)-.2 F 2.614(ew)-.1 G .115
+(ill look much better)-2.614 F 2.615(,t)-.4 G(he)-2.615 E 2.615(yw)-.15
+G .115(ill sho)-2.615 F 2.615(war)-.25 G .115(ather constant)-2.615 F
+-.25(va)108 358.8 S .192(lue. I kno).25 F 2.692(ww)-.25 G .192
+(hen the router is b)-2.692 F .192(usy \(it w)-.2 F .192(orks \255> it \
+uses more electricity \255> it generates more heat \255> the)-.1 F .002
+(temperature rises\). I kno)108 370.8 R 2.503(ww)-.25 G .003
+(hen the doors are left open \(the room is cooled \255> the w)-2.503 F
+.003(arm air from the rest of)-.1 F .702(the b)108 382.8 R .702
+(uilding \215o)-.2 F .701(ws into the computer room \255> the inlet tem\
+perature rises\) etc. The data type we use when)-.25 F .094
+(creating the database before w)108 394.8 R .094(as counter)-.1 F 2.594
+(,w)-.4 G 2.594(en)-2.594 G .594 -.25(ow h)-2.594 H -2.25 -.2(av e).25 H
+2.594(ad)2.794 G(if)-2.594 E .094(ferent data type and thus a dif)-.25 F
+.095(ferent name for it.)-.25 F(It is called)108 406.8 Q/F2 9
+/Times-Roman@0 SF(GA)2.5 E(UGE)-.495 E F0 2.5(.T)C
+(here are more such data types:)-2.5 E/F3 10/Courier@0 SF 6(-C)114 423.6
+S 12(OUNTER we)-6 F(already know this one)6 E 6(-G)114 435.6 S 24
+(AUGE we)-6 F(just learned this one)6 E 6(-D)114 447.6 S(ERIVE)-6 E 6
+(-A)114 459.6 S(BSOLUTE)-6 E F0 1.06(The tw)108 483.6 R 3.56(on)-.1 G
+1.56 -.25(ew t)-3.56 H 1.06(ypes are).25 F F2(DERIVE)3.56 E F0(and)3.56
+E F2(ABSOLUTE)3.56 E F0 3.56(.A)C 1.06(bsolute can be used lik)-3.56 F
+3.56(ec)-.1 G 1.059(ounter with one dif)-3.56 F(ference:)-.25 E 1.408
+(RRDtool assumes the counter is reset when it')108 495.6 R 3.908(sr)-.55
+G 1.408(ead. That is: its delta is kno)-3.908 F 1.409
+(wn without calculation by)-.25 F .666
+(RRDtool whereas RRDtool needs to calculate it for the counter type.)108
+507.6 R .665(Example: our \214rst e)5.665 F .665(xample \(12345,)-.15 F
+.195(12357, 12363, 12363\) w)108 519.6 R .195(ould read: unkno)-.1 F
+.196(wn, 12, 6, 0. The rest of the calculations stay the same.)-.25 F
+.196(The other)5.196 F .64(one, deri)108 531.6 R -.15(ve)-.25 G 3.14(,i)
+.15 G 3.14(sl)-3.14 G(ik)-3.14 E 3.14(ec)-.1 G(ounter)-3.14 E 3.14(.U)
+-.55 G(nlik)-3.14 E 3.14(ec)-.1 G(ounter)-3.14 E 3.14(,i)-.4 G 3.14(tc)
+-3.14 G .639(an also decrease so it can ha)-3.14 F .939 -.15(ve a n)-.2
+H -2.25 -.15(eg a).15 H(ti).15 E .939 -.15(ve d)-.25 H .639(elta. Ag).15
+F .639(ain, the)-.05 F(rest of the calculations stay the same.)108 543.6
+Q(Let')108 560.4 Q 2.5(st)-.55 G(ry them all:)-2.5 E 154.84
+(24/Oct/99 Last)72 768 R(change: 1.0.8)2.5 E(12)187.34 E EP
+%%Page: 13 13
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF(RRDTUT)72 48 Q -.834(ORIAL \( 1 \))-.18 F
+130.862(rrdtool RRDTUT)133.362 F -.834(ORIAL \( 1 \))-.18 F/F1 10
+/Courier@0 SF(rrdtool create all.rrd --start 978300900 \\)126 96 Q
+(DS:a:COUNTER:600:U:U \\)180 108 Q(DS:b:GAUGE:600:U:U \\)180 120 Q
+(DS:c:DERIVE:600:U:U \\)180 132 Q(DS:d:ABSOLUTE:600:U:U \\)180 144 Q
+(RRA:AVERAGE:0.5:1:10)180 156 Q(rrdtool update all.rrd \\)126 168 Q 18
+(978301200:300:1:600:300 \\)180 180 R 12(978301500:600:3:1200:600 \\)180
+192 R 12(978301800:900:5:1800:900 \\)180 204 R
+(978302100:1200:3:2400:1200 \\)180 216 Q(978302400:1500:1:2400:1500 \\)
+180 228 Q(978302700:1800:2:1800:1800 \\)180 240 Q 18
+(978303000:2100:4:0:2100 \\)180 252 R 6(978303300:2400:6:600:2400 \\)180
+264 R 6(978303600:2700:4:600:2700 \\)180 276 R
+(978303900:3000:2:1200:3000)180 288 Q
+(rrdtool graph all1.gif -s 978300600 -e 978304200 -h 400 \\)126 300 Q
+(DEF:linea=all.rrd:a:AVERAGE LINE3:linea#FF0000:"Line A" \\)180 312 Q
+(DEF:lineb=all.rrd:b:AVERAGE LINE3:lineb#00FF00:"Line B" \\)180 324 Q
+(DEF:linec=all.rrd:c:AVERAGE LINE3:linec#0000FF:"Line C" \\)180 336 Q
+(DEF:lined=all.rrd:d:AVERAGE LINE3:lined#000000:"Line D")180 348 Q/F2 10
+/Times-Bold@0 SF -7.218(RR)108 382.8 S -7.218(RR)7.218 G -7.218(DD)7.218
+G -3.328(tt)7.218 G -4.998(oo)3.328 G -4.998(oo)4.998 G 5.556 -2.778
+(ll u)4.998 H(un)-2.78 E(nd)-5.558 E(de)-5.558 E(er)-4.438 E 2.5(rt)
+-4.438 G(th)-5.828 E(he)-5.558 E 2.5(eM)-4.438 G(Mi)-11.938 E(ic)-2.778
+E(cr)-4.438 E -.18(ro)-4.438 G(os)-4.818 E(sc)-3.888 E(co)-4.438 E(op)
+-4.998 E(pe)-5.558 E(e)-4.438 E F0 6.5<834c>108 399.6 S .894(ine A is a\
+ counter so it should continuously increment and RRDtool should calcula\
+te the dif)-6.5 F(ferences.)-.25 E 1.314(Also, RRDtool needs to di)118
+411.6 R 1.314(vide the dif)-.25 F 1.314
+(ference by the amount of time lapsed. This should end up as a)-.25 F
+(straight line at 1 \(the deltas are 300, the time is 300\).)118 423.6 Q
+6.5<834c>108 440.4 S(ine B is of type g)-6.5 E(auge. These are `)-.05 E
+(`real')-.74 E 2.5('v)-.74 G(alues so the)-2.75 E 2.5(ys)-.15 G
+(hould match what we put in: a sort of a w)-2.5 E -2.25 -.2(av e)-.1 H
+(.).2 E 6.5<834c>108 457.2 S .514(ine C is deri)-6.5 F -.15(ve)-.25 G
+3.014(.I).15 G 3.014(ts)-3.014 G .515(hould be a counter that can decre\
+ase. It does so between 2400 and 0, with 1800 in-)-3.014 F(between.)118
+469.2 Q 6.5<834c>108 486 S .38(ine D is of type absolute. This is lik)
+-6.5 F 2.88(ec)-.1 G .38(ounter b)-2.88 F .38(ut it w)-.2 F .38
+(orks on v)-.1 F .38(alues without calculating the dif)-.25 F(ference.)
+-.25 E(The numbers are the same and as you can see \(hopefully\) this h\
+as a dif)118 498 Q(ferent result.)-.25 E .505
+(This translates in the follo)108 514.8 R .505(wing v)-.25 F .505
+(alues, starting at 23:10 and ending at 00:10 the ne)-.25 F .505
+(xt day \(where U means)-.15 F(unkno)108 526.8 Q(wn/unplotted\):)-.25 E
+F1 6(-L)114 543.6 S(ine A:)-6 E 12(uu111111111u)12 G 6(-L)114 555.6 S
+(ine B:)-6 E 12(u1353124642u)12 G 6(-L)114 567.6 S(ine C:)-6 E 12
+(uu2220)12 G(-2 -6)-6 E 12(202u)12 G 6(-L)114 579.6 S(ine D:)-6 E 12
+(u123456789)12 G 6(10 u)-6 F F0 .737(If your)108 603.6 R/F3 9
+/Times-Roman@0 SF(GIF)3.237 E F0(sho)3.237 E .736(ws all this, you kno)
+-.25 F 3.236(wy)-.25 G .736(ou ha)-3.236 F 1.036 -.15(ve t)-.2 H .736
+(yped the data correct, the RRDtool e).15 F -.15(xe)-.15 G .736
+(cutable is w).15 F(orking)-.1 E(properly)108 615.6 Q 2.505(,y)-.65 G
+.005(our vie)-2.505 F .005(wer doesn')-.25 F 2.505(tf)-.18 G .006
+(ool you and you successfully entered the year 2000 :\) Y)-2.505 F .006
+(ou could try the same)-1.1 F -.15(ex)108 627.6 S
+(ample four times, each time with only one of the lines.).15 E(Let')108
+644.4 Q 2.5(sg)-.55 G 2.5(oo)-2.5 G -.15(ve)-2.65 G 2.5(rt).15 G
+(he data ag)-2.5 E(ain:)-.05 E 6.5<834c>108 661.2 S .741(ine A: 300,600\
+,900 and so on. The counter delta is a constant 300 and so it the time \
+delta. A number)-6.5 F(di)118 673.2 Q .081(vided by itself is al)-.25 F
+-.1(wa)-.1 G .081(ys 1 \(e).1 F .082(xcept when di)-.15 F .082
+(viding by zero which is unde\214ned/ille)-.25 F -.05(ga)-.15 G 2.582
+(l\). Wh).05 F 2.582(yi)-.05 G 2.582(si)-2.582 G 2.582(tt)-2.582 G .082
+(hat the)-2.582 F .039(\214rst point is unkno)118 685.2 R .039(wn ? W)
+-.25 F 2.539(ed)-.8 G 2.538(ok)-2.539 G(no)-2.538 E 2.538(ww)-.25 G .038
+(hat we put into the database ? T)-2.538 F .038(rue ! But we didn')-.35
+F 2.538(th)-.18 G -2.25 -.2(av e)-2.538 H 2.538(av)2.738 G .038(alue to)
+-2.788 F .547(calculate the delta from so we don')118 697.2 R 3.047(tk)
+-.18 G(no)-3.047 E 3.047(ww)-.25 G .547(here we started. It w)-3.047 F
+.548(ould be wrong to assume we started at)-.1 F(zero so we don')118
+709.2 Q 2.5(t!)-.18 G 154.84(24/Oct/99 Last)72 768 R(change: 1.0.8)2.5 E
+(13)187.34 E EP
+%%Page: 14 14
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF(RRDTUT)72 48 Q -.834(ORIAL \( 1 \))-.18 F
+130.862(rrdtool RRDTUT)133.362 F -.834(ORIAL \( 1 \))-.18 F 6.5<834c>108
+96 S(ine B: There is nothing to calculate. The numbers are as is.)-6.5 E
+6.5<834c>108 112.8 S .911(ine C: Ag)-6.5 F .911(ain, the start-out v)
+-.05 F .911(alue is unkno)-.25 F .911(wn. The same story is v)-.25 F
+.911(alid lik)-.25 F 3.411(ef)-.1 G .911(or line A. In this case the)
+-3.411 F .237(deltas are not constant so the line is not. If we w)118
+124.8 R .238(ould put the same numbers in the database as we did for)-.1
+F .949(line A, we w)118 136.8 R .949(ould ha)-.1 F 1.249 -.15(ve g)-.2 H
+.949(otten the same line. Unlik).15 F 3.449(et)-.1 G .949(ype counter)
+-3.449 F 3.449(,t)-.4 G .949(his type can decrease and I hope to)-3.449
+F(sho)118 148.8 Q 2.5(wy)-.25 G(ou later on wh)-2.5 E 2.5(yt)-.05 G
+(here is a dif)-2.5 E(ference.)-.25 E 6.5<834c>108 165.6 S .415
+(ine D: Here the de)-6.5 F .415
+(vice calculates the deltas. Therefore we)-.25 F/F1 9/Times-Roman@0 SF
+(DO)2.915 E F0(kno)2.916 E 2.916(wt)-.25 G .416
+(he \214rst delta and it is plotted. W)-2.916 F(e)-.8 E .579
+(had the same input as with line A b)118 177.6 R .578
+(ut the meaning of this input is dif)-.2 F .578
+(ferent. Therefore the line is dif)-.25 F(fer)-.25 E(-)-.2 E 2.729
+(ent. In)118 189.6 R .229(this case the deltas increase each time with \
+300. The time delta stays at a constant 300 and there-)2.729 F
+(fore the di)118 201.6 Q(vision of the tw)-.25 E 2.5(og)-.1 G -2.15 -.25
+(iv e)-2.5 H 2.5(si).25 G(ncreasing results.)-2.5 E/F2 10/Times-Bold@0
+SF -7.218(CC)108 224.4 S -4.998(oo)7.218 G -5.558(uu)4.998 G -5.558(nn)
+5.558 G -3.328(tt)5.558 G -4.438(ee)3.328 G 8.876 -4.438(rr W)4.438 H
+(Wr)-5.56 E(ra)-4.438 E(ap)-4.998 E(ps)-5.558 E(s)-3.888 E F0 .217
+(There are a fe)108 241.2 R 2.717(wm)-.25 G .217(ore basics to sho)
+-2.717 F 1.517 -.65(w. S)-.25 H .217
+(ome important options are still to be co).65 F -.15(ve)-.15 G .217
+(red and we ha).15 F -.15(ve)-.2 G(n').15 E 2.717(tl)-.18 G .217(ook at)
+-2.717 F .081(counter wraps yet. First the counter wrap: In our car we \
+notice that our counter sho)108 253.2 R .082(ws 999987. W)-.25 F 2.582
+(et)-.8 G(ra)-2.582 E -.15(ve)-.2 G 2.582(l2).15 G(0)-2.582 E F1(KM)108
+265.2 Q F0 1.35(and the counter should go to 1000007. Unfortunately)
+3.851 F 3.85(,t)-.65 G 1.35
+(here are only six digits on our counter so it)-3.85 F .313(really sho)
+108 277.2 R .313(ws 000007. If we w)-.25 F .314
+(ould plot that on a type)-.1 F F1(DERIVE)2.814 E F0 2.814(,i)C 2.814
+(tw)-2.814 G .314(ould mean that the counter w)-2.914 F .314
+(as set back)-.1 F(999980)108 289.2 Q F1(KM)3.593 E F0 3.593(.I)C 3.593
+(tw)-3.593 G(asn')-3.693 E 1.093(t, and there has to be some protection\
+ for this. This protection is only a)-.18 F -.25(va)-.2 G 1.092
+(ilable for).25 F(type)108 301.2 Q F1(COUNTER)3.124 E F0 .624
+(which should be used for this kind of counter an)3.124 F(yw)-.15 E .625
+(ays. Ho)-.1 F 3.125(wd)-.25 G .625(oes it w)-3.125 F .625(ork ? T)-.1 F
+.625(ype counter)-.8 F .741(should ne)108 313.2 R -.15(ve)-.25 G 3.241
+(rd).15 G .741(ecrease and therefore RRDtool must assume it wrapped if \
+it does decrease !)-3.241 F .74(If the delta is)5.74 F(ne)108 325.2 Q
+-.05(ga)-.15 G(ti).05 E -.15(ve)-.25 G 3.461(,t).15 G .961
+(his can be compensated for by adding the maximum v)-3.461 F .961
+(alue of the counter + 1. F)-.25 F .961(or our car this)-.15 F -.1(wo)
+108 337.2 S(uld be:).1 E/F3 10/Courier@0 SF
+(Delta = 7 - 999987 = -999980)114 354 Q
+(\(instead of 1000007-999987=20\))24 E
+(Real delta = -999980 + 999999 + 1 = 20)114 378 Q F0 .531
+(At the time of writing this document, RRDtool kno)108 402 R .53
+(ws of counters that are either 32 bits or 64 bits of size.)-.25 F
+(These counters can handle the follo)108 414 Q(wing dif)-.25 E(ferent v)
+-.25 E(alues:)-.25 E F3 6(-3)114 430.8 S 6(2b)-6 G(its: 0 ..)-6 E
+(4294967295)66 E 6(-6)114 442.8 S 6(4b)-6 G
+(its: 0 .. 18446744073709551615)-6 E F0
+(If these numbers look strange to you, you w)108 466.8 Q(ould lik)-.1 E
+2.5(et)-.1 G 2.5(ov)-2.5 G(ie)-2.5 E 2.5(wt)-.25 G(hem in their he)-2.5
+E(xadecimal form:)-.15 E F3 6(-3)114 483.6 S 6(2b)-6 G(its: 0 ..)-6 E
+(FFFFFFFF)54 E 6(-6)114 495.6 S 6(4b)-6 G(its: 0 .. FFFFFFFFFFFFFFFF)-6
+E F0 .553(RRDtool handles both counters the same. If an o)108 519.6 R
+-.15(ve)-.15 G(r\215o).15 E 3.054(wo)-.25 G .554(ccurs and the delta w)
+-3.054 F .554(ould be ne)-.1 F -.05(ga)-.15 G(ti).05 E -.15(ve)-.25 G
+3.054(,R).15 G(RDtool)-3.054 E .137(\214rst adds the maximum of a small\
+ counter + 1 to the delta. If the delta is still ne)108 531.6 R -.05(ga)
+-.15 G(ti).05 E -.15(ve)-.25 G 2.637(,i).15 G 2.637(th)-2.637 G .137
+(ad to be the lar)-2.637 F(ge)-.18 E 1.03
+(counter that wrapped. Add the maximum possible v)108 543.6 R 1.031
+(alue of the lar)-.25 F 1.031(ge counter + 1 and subtract the f)-.18 F
+(alsely)-.1 E .454(added small v)108 555.6 R 2.954(alue. There)-.25 F
+.453(is a risk in this: suppose the lar)2.953 F .453
+(ge counter wrapped while adding a huge delta, it)-.18 F .027
+(could happen in theory that adding the smaller v)108 567.6 R .028
+(alue w)-.25 F .028(ould mak)-.1 F 2.528(et)-.1 G .028(he delta positi)
+-2.528 F -.15(ve)-.25 G 2.528(.I).15 G 2.528(nt)-2.528 G .028(his unlik)
+-2.528 F .028(ely case the)-.1 F .49(results w)108 579.6 R .49(ould not\
+ be correct. The increase should be nearly as high as the maximum count\
+er v)-.1 F .49(alue for that)-.25 F .293(to happen so chances are you w)
+108 591.6 R .293(ould ha)-.1 F .593 -.15(ve s)-.2 H -2.15 -.25(ev e).15
+H .293(ral other problems as well and this particular problem w).25 F
+(ould)-.1 E 1.129(not e)108 603.6 R -.15(ve)-.25 G 3.629(nb).15 G 3.629
+(ew)-3.629 G 1.129(orth thinking about. Ev)-3.729 F 1.129
+(en though I did include an e)-.15 F 1.128
+(xample of it so you can judge that for)-.15 F(yourself.)108 615.6 Q
+.055(The ne)108 632.4 R .055(xt section gi)-.15 F -.15(ve)-.25 G 2.555
+(sy).15 G .055(ou some numerical e)-2.555 F .055(xamples for counter)
+-.15 F 2.555(-wraps. T)-.2 F .056(ry to do the calculations yourself)
+-.35 F(or just belie)108 644.4 Q .3 -.15(ve m)-.25 H 2.5(ei).15 G 2.5
+(fy)-2.5 G(our calculator can')-2.5 E 2.5(th)-.18 G
+(andle the numbers :\))-2.5 E(Correction numbers:)108 661.2 Q F3 6(-3)
+114 678 S 6(2b)-6 G(its: \(4294967295+1\) =)-6 E(4294967296)198 E 6(-6)
+114 690 S 6(4b)-6 G
+(its: \(18446744073709551615+1\)-correction1 = 18446744069414584320)-6 E
+F0 154.84(24/Oct/99 Last)72 768 R(change: 1.0.8)2.5 E(14)187.34 E EP
+%%Page: 15 15
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF(RRDTUT)72 48 Q -.834(ORIAL \( 1 \))-.18 F
+130.862(rrdtool RRDTUT)133.362 F -.834(ORIAL \( 1 \))-.18 F/F1 10
+/Courier@0 SF 42(Before: 4294967200)114 96 R 72(Increase: 100)114 108 R
+(Should become: 4294967300)114 120 Q(But really is:)114 132 Q(4)60 E 42
+(Delta: -4294967196)114 144 R 6(Correction1: -4294967196)114 156 R
+(+4294967296 = 100)6 E 42(Before: 18446744073709551000)114 180 R 132
+(Increase: 800)114 192 R(Should become: 18446744073709551800)114 204 Q
+(But really is:)114 216 Q(184)108 E 42(Delta: -18446744073709550816)114
+228 R 6(Correction1: -18446744073709550816)114 240 R
+(+4294967296 = -18446744069414583520)6 E 6
+(Correction2: -18446744069414583520)114 252 R
+(+18446744069414584320 = 800)6 E 42(Before: 18446744073709551615)114 276
+R 6(\(m)6 G(aximum value \))-6 E 30(Increase: 18446744069414584320)114
+288 R 6(\(a)6 G(bsurd increase, minimum for)-6 E
+(Should become: 36893488143124135935)114 300 Q(this example to work \))
+78 E(But really is: 18446744069414584319)114 312 Q 102
+(Delta: -4294967296)114 324 R 6(Correction1: -4294967296)114 336 R 6(+4)
+6 G(294967296 = 0)-6 E(\(not negative -> no correction2\))114 348 Q 42
+(Before: 18446744073709551615)114 372 R 6(\(m)6 G(aximum value \))-6 E
+30(Increase: 18446744069414584319)114 384 R 6(\(o)6 G
+(ne less increase \))-6 E(Should become: 36893488143124135934)114 396 Q
+(But really is: 18446744069414584318)114 408 Q 102(Delta: -4294967297)
+114 420 R 6(Correction1: -4294967297)114 432 R(+4294967296 = -1)6 E 6
+(Correction2: -1)114 444 R(+18446744069414584320 = 18446744069414584319)
+6 E F0 .929(As you can see from the last tw)108 468 R 3.429(oe)-.1 G
+.929(xamples, you need strange numbers for RRDtool to f)-3.579 F .928
+(ail \(pro)-.1 F .928(vided it')-.15 F(s)-.55 E -.2(bu)108 480 S 3.107
+(gf).2 G .608(ree of course\) so this should not happen.)-3.107 F(Ho)
+5.608 E(we)-.25 E -.15(ve)-.25 G -.4(r,).15 G/F2 9/Times-Roman@0 SF
+(SNMP)3.508 E F0 .608(or whate)3.108 F -.15(ve)-.25 G 3.108(rm).15 G
+.608(ethod you choose to collect)-3.108 F 1.486
+(the data might also report wrong numbers occasionally)108 492 R 6.486
+(.W)-.65 G 3.986(ec)-7.286 G(an')-3.986 E 3.986(tp)-.18 G(re)-3.986 E
+-.15(ve)-.25 G 1.485(nt all errors b).15 F 1.485(ut there are some)-.2 F
+.47(things we can do.)108 504 R .47(The RRDtool `)5.47 F(`create')-.74 E
+2.971('c)-.74 G .471(ommand tak)-2.971 F .471(es tw)-.1 F 2.971(os)-.1 G
+.471(pecial parameters for this. The)-2.971 F 2.971(yd)-.15 G .471
+(e\214ne the)-2.971 F .083(minimum and maximum allo)108 516 R .083
+(wed v)-.25 F .083(alue. Until no)-.25 F 1.383 -.65(w, w)-.25 H 2.583
+(eu).65 G .083(sed `)-2.583 F(`U')-.74 E .083(', meaning `)-.74 F
+(`unkno)-.74 E(wn')-.25 E .082('. If you pro)-.74 F .082(vide v)-.15 F
+(al-)-.25 E .204(ues for one or both of them and if RRDtool recei)108
+528 R -.15(ve)-.25 G 2.704(sv).15 G .204
+(alues that are outside these limits, it will ignore those)-2.954 F -.25
+(va)108 540 S .882(lues. F).25 F .882(or a thermometer in de)-.15 F .882
+(grees Celsius, the absolute minimum is just under \255273. F)-.15 F
+.881(or my router)-.15 F 3.381(,I)-.4 G .009
+(can assume this minimum is much higher so I w)108 552 R .01
+(ould say it is 10. The maximum temperature for my router I)-.1 F -.1
+(wo)108 564 S .232(uld state as 80. An).1 F 2.732(yh)-.15 G .232
+(igher and the de)-2.732 F .232(vice w)-.25 F .232(ould be out of order)
+-.1 F 5.232(.F)-.55 G .232(or my car)-5.382 F 2.732(,Iw)-.4 G .232
+(ould ne)-2.832 F -.15(ve)-.25 G 2.731(re).15 G .231(xpect ne)-2.881 F
+(g-)-.15 E(ati)108 576 Q 1.106 -.15(ve n)-.25 H .806
+(umbers and also I w).15 F .806(ould not e)-.1 F .807
+(xpect numbers to be higher than 230. An)-.15 F .807
+(ything else, and there must)-.15 F(ha)108 588 Q .656 -.15(ve b)-.2 H
+.356(een an error).15 F 2.856(.R)-.55 G .356(emember: the opposite is n\
+ot true, if the numbers pass this check it doesn')-2.856 F 2.855(tm)-.18
+G .355(ean that)-2.855 F(the)108 600 Q 2.5(ya)-.15 G(re correct. Al)-2.5
+E -.1(wa)-.1 G(ys judge the graph with a health).1 E 2.5(yd)-.05 G
+(ose of paranoia if it looks weird.)-2.5 E/F3 10/Times-Bold@0 SF -7.218
+(DD)108 622.8 S -4.998(aa)7.218 G -3.328(tt)4.998 G 9.996 -4.998(aa R)
+3.328 H(Re)-2.22 E(es)-4.438 E(sa)-3.888 E(am)-4.998 E(mp)-8.328 E(pl)
+-5.558 E(li)-2.778 E(in)-2.778 E(ng)-5.558 E(g)-4.998 E F0 .57
+(One important feature of RRDtool has not been e)108 639.6 R .57
+(xplained yet: It is virtually impossible to collect the data)-.15 F
+.511(and feed it into RRDtool on e)108 651.6 R .511(xact interv)-.15 F
+.51(als. RRDtool therefore interpolates the data so it is on e)-.25 F
+.51(xact inter)-.15 F(-)-.2 E -.25(va)108 663.6 S(ls. If you do not kno)
+.25 E 2.5(ww)-.25 G(hat this means or ho)-2.5 E 2.5(wi)-.25 G 2.5(tw)
+-2.5 G(orks, then here')-2.6 E 2.5(st)-.55 G(he help you seek:)-2.5 E
+1.369(Suppose a counter increases with e)108 680.4 R 1.369
+(xactly one for e)-.15 F -.15(ve)-.25 G 1.369(ry second. Y).15 F 1.37
+(ou w)-1.1 F 1.37(ant to measure it in 300 seconds)-.1 F(interv)108
+692.4 Q .333(als. Y)-.25 F .333(ou should retrie)-1.1 F .633 -.15(ve v)
+-.25 H .333(alues that are e)-.1 F .333(xactly 300 apart. Ho)-.15 F(we)
+-.25 E -.15(ve)-.25 G 1.132 -.4(r, d).15 H .332(ue to v).4 F .332
+(arious circumstances you)-.25 F .607(are a fe)108 704.4 R 3.107(ws)-.25
+G .607(econds late and the interv)-3.107 F .608
+(al is 303. The delta will also be 303 in that case. Ob)-.25 F .608
+(viously RRDtool)-.15 F 1.053
+(should not put 303 in the database and mak)108 716.4 R 3.553(ey)-.1 G
+1.053(ou belie)-3.553 F 1.353 -.15(ve t)-.25 H 1.052
+(hat the counter increased 303 in 300 seconds.).15 F .193
+(This is where RRDtool interpolates: it alters the 303 v)108 728.4 R
+.193(alue as if it w)-.25 F .193(ould ha)-.1 F .493 -.15(ve b)-.2 H .193
+(een stored earlier and it will).15 F 154.84(24/Oct/99 Last)72 776.4 R
+(change: 1.0.8)2.5 E(15)187.34 E EP
+%%Page: 16 16
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF(RRDTUT)72 48 Q -.834(ORIAL \( 1 \))-.18 F
+130.862(rrdtool RRDTUT)133.362 F -.834(ORIAL \( 1 \))-.18 F .533
+(be 300 in 300 seconds.)108 96 R(Ne)5.533 E .533(xt time you are at e)
+-.15 F .533(xactly the right time. This means that the current interv)
+-.15 F .533(al is)-.25 F .671
+(297 seconds and also the counter increased with 297. Ag)108 108 R .671
+(ain RRDtool alters the v)-.05 F .671(alue and stores 300 as it)-.25 F
+(should be.)108 120 Q/F1 10/Courier@0 SF(in the RDD)144 136.8 Q
+(in reality)102 E 12(time+000: 0)114 160.8 R 12(delta="U" time+000:)6 F
+6(0d)24 G(elta="U")-6 E(time+300: 300 delta=300)114 172.8 Q 6
+(time+300: 300)18 F(delta=300)6 E(time+600: 600 delta=300)114 184.8 Q 6
+(time+603: 603)18 F(delta=303)6 E(time+900: 900 delta=300)114 196.8 Q 6
+(time+900: 900)18 F(delta=297)6 E F0(Let')108 220.8 Q 2.877(sc)-.55 G
+.377(reate tw)-2.877 F 2.877(oi)-.1 G .377(dentical databases. I')-2.877
+F .677 -.15(ve c)-.5 H .377
+(hosen the time range 920805000 to 920805900 as this goes v).15 F(ery)
+-.15 E(well with the e)108 232.8 Q(xample numbers.)-.15 E F1
+(rrdtool create seconds1.rrd)126 249.6 Q(\\)18 E(--start 920804700)144
+261.6 Q(\\)60 E(DS:seconds:COUNTER:600:U:U \\)144 273.6 Q
+(RRA:AVERAGE:0.5:1:24)144 285.6 Q
+(for Unix: cp seconds1.rrd seconds2.rrd)126 309.6 Q(for Dos:)126 321.6 Q
+(copy seconds1.rrd seconds2.rrd)12 E(for vms:)126 333.6 Q
+(how would I know :\))12 E(rrdtool update seconds1.rrd \\)126 357.6 Q
+(920805000:000 920805300:300 920805600:600 920805900:900)144 369.6 Q
+(rrdtool update seconds2.rrd \\)126 381.6 Q
+(920805000:000 920805300:300 920805603:603 920805900:900)144 393.6 Q
+(rrdtool graph seconds1.gif)126 417.6 Q(\\)138 E
+(--start 920804700 --end 920806200)144 429.6 Q(\\)78 E(--height 200)144
+441.6 Q(\\)204 E(--upper-limit 1.05 --lower-limit 0.95 --rigid \\)144
+453.6 Q 30(DEF:seconds=seconds1.rrd:seconds:AVERAGE \\)144 465.6 R 132
+(CDEF:unknown=seconds,UN \\)144 477.6 R 150(LINE2:seconds#0000FF \\)144
+489.6 R(AREA:unknown#FF0000)144 501.6 Q(rrdtool graph seconds2.gif)126
+513.6 Q(\\)138 E(--start 920804700 --end 920806200)144 525.6 Q(\\)78 E
+(--height 200)144 537.6 Q(\\)204 E
+(--upper-limit 1.05 --lower-limit 0.95 --rigid \\)144 549.6 Q 30
+(DEF:seconds=seconds2.rrd:seconds:AVERAGE \\)144 561.6 R 132
+(CDEF:unknown=seconds,UN \\)144 573.6 R 150(LINE2:seconds#0000FF \\)144
+585.6 R(AREA:unknown#FF0000)144 597.6 Q F0(Both graphs should sho)108
+621.6 Q 2.5(wt)-.25 G(he same.)-2.5 E/F2 9/Times-Bold@0 SF -8.998(WW)72
+638.4 S -6.496(RR)8.998 G -6.496(AA)6.496 G -5.497(PP)6.496 G -6.496(UU)
+5.497 G -5.497(PP)6.496 G F0(It')108 650.4 Q 3.206(st)-.55 G .706
+(ime to wrap up this document. Y)-3.206 F .706(ou no)-1.1 F 3.206(wk)
+-.25 G(no)-3.206 E 3.206(wa)-.25 G .706(ll the basics to be able to w)
+-3.206 F .707(ork with RRDtool and to)-.1 F .384
+(read the documentation a)108 662.4 R -.25(va)-.2 G 2.883(ilable. There)
+.25 F .383(is plenty more to disco)2.883 F -.15(ve)-.15 G 2.883(ra).15 G
+.383(bout RRDtool and you will \214nd more)-2.883 F .401
+(and more uses for the package. Y)108 674.4 R .401
+(ou could create easy graphics using just the e)-1.1 F .402(xamples pro)
+-.15 F .402(vided and using)-.15 F(only RRDtool. Y)108 686.4 Q
+(ou could also use the front ends that are a)-1.1 E -.25(va)-.2 G
+(ilable.).25 E F2 -8.494(MM)72 703.2 S -6.496(AA)8.494 G -3.499(II)6.496
+G -6.001(LL)3.499 G -3.499(II)6.001 G -6.496(NN)3.499 G -7(GG)6.496 G
+-6.001(LL)7 G -3.499(II)6.001 G -5.002(SS)3.499 G -6.001(TT)5.002 G F0
+.683(Remember to subscribe to the mailing-list. Ev)108 715.2 R .682
+(en if you are not answering the mails that come by)-.15 F 3.182(,i)-.65
+G 3.182(th)-3.182 G(elps)-3.182 E 1.574
+(both you and the rest. A lot of the stuf)108 727.2 R 4.075(ft)-.25 G
+1.575(hat I kno)-4.075 F 4.075(wa)-.25 G 1.575(bout MR)-4.075 F 1.575
+(TG \(and therefore about RRDtool\) I')-.6 F -.15(ve)-.5 G 154.84
+(24/Oct/99 Last)72 775.2 R(change: 1.0.8)2.5 E(16)187.34 E EP
+%%Page: 17 17
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF(RRDTUT)72 48 Q -.834(ORIAL \( 1 \))-.18 F
+130.862(rrdtool RRDTUT)133.362 F -.834(ORIAL \( 1 \))-.18 F .289(learne\
+d while just reading the list without posting to it. I did not need to \
+ask the basic questions as the)108 96 R 2.789(ya)-.15 G(re)-2.789 E .943
+(answered in the F)108 108 R 2.043 -.55(AQ \()-.74 H .943
+(read it!\) and in v).55 F .943(arious mails by other users.)-.25 F -.4
+(Wi)5.943 G .943(th thousands of users all o).4 F -.15(ve)-.15 G 3.444
+(rt).15 G(he)-3.444 E -.1(wo)108 120 S .457(rld, there will al).1 F -.1
+(wa)-.1 G .457(ys be people who ask questions that you can answer becau\
+se you read this and other).1 F(documentation and the)108 132 Q 2.5(yd)
+-.15 G(idn')-2.5 E(t.)-.18 E/F1 9/Times-Bold@0 SF -5.002(SS)72 148.8 S
+-6.001(EE)5.002 G 12.002 -6.001(EE A)6.001 H(AL)-.495 E(LS)-6.001 E(SO)
+-5.002 E(O)-7 E F0(The RRDtool manpages)108 160.8 Q F1 10.292 -6.496
+(AA UU)72 177.6 T -6.001(TT)6.496 G -7(HH)6.001 G -7(OO)7 G -6.496(RR)7
+G F0 3.306(Ih)108 189.6 S .806(ope you enjo)-3.306 F .806(yed the e)-.1
+F .807(xamples and their descriptions. If you do, help other people by \
+pointing them to)-.15 F .96(this document when the)108 201.6 R 3.46(ya)
+-.15 G .96(re asking basic questions. The)-3.46 F 3.459(yw)-.15 G .959
+(ill not only get their answer b)-3.459 F .959(ut at the same)-.2 F
+(time learn a whole lot more.)108 213.6 Q(Ale)108 230.4 Q 2.5(xv)-.15 G
+(an den Bog)-2.75 E(aerdt <ale)-.05 E(x@er)-.15 E(gens.op.het.net>)-.18
+E 154.84(24/Oct/99 Last)72 768 R(change: 1.0.8)2.5 E(17)187.34 E EP
+%%Trailer
+end
+%%EOF