Top Banner
Neues aus der Welt von RRDtool Tobias Oetiker OETIKER+PARTNER AG www.oetiker.ch
24

OpenTuesday: Neues aus der RRDtool Welt

Aug 20, 2015

Download

Software

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: OpenTuesday: Neues aus der RRDtool Welt

Neues aus der Welt von RRDtoolTobias Oetiker

OETIKER+PARTNER AGwww.oetiker.ch

Page 2: OpenTuesday: Neues aus der RRDtool Welt

RRDTo

compile rrdtool on a systemwithout graphics libraries

./configure --disable-rrd_graph

Page 3: OpenTuesday: Neues aus der RRDtool Welt

RRDTo

improvements to the windows version of rrdtool

Page 4: OpenTuesday: Neues aus der RRDtool Welt

RRDTo

valid JSON output from rrdtool xport

{ "hello": "yes this is json" }

Page 5: OpenTuesday: Neues aus der RRDtool Welt

RRDTo

fake non existing "step 1 RRA"sfor MIN, MAX and LAST

Page 6: OpenTuesday: Neues aus der RRDtool Welt

RRDTo

a MEDIAN operator for CDEF expressions

CDEF:x=a,b,c,d,4,MEDIAN

Page 7: OpenTuesday: Neues aus der RRDtool Welt

RRDTo

new stack operators: DEPT, INDEX, COPY, ROLL

a,b,DEPTH -> a,b,2

a,b,c,1,INDEX -> a,b,c,c

a,b,c,d,2,COPY -> a,b,c,b,c,d

a,b,c,d,3,1,ROLL -> a,d,b,c

a,b,c,d,3,-1,ROLL -> a,c,d,b

Page 8: OpenTuesday: Neues aus der RRDtool Welt

RRDTo

optionally ignore past updateswith rrdtool update

rrdtool --skip-past-updates x.rrd 1410794816:42

Page 9: OpenTuesday: Neues aus der RRDtool Welt

RRDTo

optionally ignore LINE or AREAcommands for chart scaling

LINE:ds1#ff0000:Test:skipscale

Page 10: OpenTuesday: Neues aus der RRDtool Welt

RRDTo

detect 2038 problem32-bit time overflow

Page 11: OpenTuesday: Neues aus der RRDtool Welt

RRDTo

performance boost for large graph expressions with 1000+ DEF lines by using HASH map

Page 12: OpenTuesday: Neues aus der RRDtool Welt

RRDTo

improved cross-compilation support

Page 13: OpenTuesday: Neues aus der RRDtool Welt

RRDTo

.Net bindings

Page 14: OpenTuesday: Neues aus der RRDtool Welt

RRDTo

new rrdtool graph option to skip non-existing source files

rrdtool graph --use-nan-for-all-missing-data ...

Page 15: OpenTuesday: Neues aus der RRDtool Welt

RRDTo

continuous integration throughtravis-ci on GitHub

Page 16: OpenTuesday: Neues aus der RRDtool Welt

RRDTo

finally a growing test suite withtravis integration

Page 17: OpenTuesday: Neues aus der RRDtool Welt

RRDTo

restore from a pipe

rrdtool dump x.rrd | rrdtool restore - y.rrd

Page 18: OpenTuesday: Neues aus der RRDtool Welt

RRDTo

RRA row count and stepcan be defined in absolute time

rrdtool create power.rrd \

--start now-2h --step 1s \

DS:watts:GAUGE:5m:0:24000 \

RRA:AVERAGE:0.5:1s:10d \

RRA:AVERAGE:0.5:1m:90d \

RRA:AVERAGE:0.5:1h:18M

Page 19: OpenTuesday: Neues aus der RRDtool Welt

RRDTo

all new create on steroids can pull both data and configuration from existing rrd filesrrdtool create --template s.rrd y.rrd

rrdtool create --source a.rrd \

DS:a=b:DERIVE:300:0:1 RRA:AVERAGE:0.5:1:100

Page 20: OpenTuesday: Neues aus der RRDtool Welt

RRDTo

use rrdtool graph to chart arbitrary datavia a callback function for data fetching

RRDs::fetch_register_callback sub {

my $request = shift;

...

return { start => $unix_timestamp,

step => $step_width,

data => { dsName1 => [ value1, …]},

}};

RRDs::graph( …, 'DEF:a=cb//string:ds1:AVERAGE');

Page 21: OpenTuesday: Neues aus der RRDtool Welt

RRDTo

new key value parser for rrdtool graph FCNT:p1:[p2][:k1[=v1][:k2[=v2]]...

DEF:ds1=a.rrd:a:AVERAGE:step=7200:reduce=MAX

LINE1:ds1#FF0000:test:dashes=15,5:dash-offset=10

Page 22: OpenTuesday: Neues aus der RRDtool Welt

RRDTo

get rrdtool master from github now:https://github.com/oetiker/rrdtool-1.x

> git [email protected]:oetiker/rrdtool-1.x.git

> cd rrdtool-1.x

> ./bootstrap

> ./configure && make install

Page 23: OpenTuesday: Neues aus der RRDtool Welt

RRDTo

and one more thing ...

Page 24: OpenTuesday: Neues aus der RRDtool Welt

RRDTo

interactive rrdgraphs on the web

http://tobi.oetiker.ch/rrdgraph.js