Table of Contents

RRD Tool

Reference:

Cómo crear una base de datos RRD

rrdtool create meteo.rrd --start=1404406800 --step=900 DS:T:GAUGE:1900:-10:40 DS:P:GAUGE:1900:990:1040 DS:H:GAUGE:1900:0:100 DS:DP:GAUGE:1900:0:20 RRA:MAX:0.5:1:40000

En este ejemplo se crea la base de datos meteo.rrd que cada 15 minutos (–step=900) almacena valores de Temperatura (T), Presión (P), Humedad Relativa (H) y Punto de Rocío (DP).

El parámetro –start=1404406800 determina que la base de datos RRD no va a aceptar datos anteriores a las 14:00 horas del 3 de julio de 2014 (epoch = 1404406800 seconds since 1 jan 1970)

Directiva DS

Una base de datos RRD consiste en un conjunto de campos o valores, y cada uno se declara con la directiva DS. La estructura de los campos de datos que se van a almacenar es esta (usaremos el caso de la Temepratura como ejemplo):

DS:T:GAUGE:1900:-10:40
DS:variable_name:GAUGE:heartbeat:min:max

Directiva RRA

La directiva RRA define cómo y cuantos datos se van a almacenar en la base de datos Round Robin. Cuando un dato se ingresa a la base de datos, primero se ingresa en el tiempo (time slot) correspondiente al –step, eso constituye un dato primario. Luego se procesa mediante una función de consolidación (CF) que se declara en la directiva RRA.

Las funciones de consolidación (CF) disponibles son: AVERAGE, MIN, MAX, LAST

RRA:CF:xff:steps:rows

ejemplo:

RRA:MAX:0.5:1:40000

Cómo graficar los datos

Ejemplo:

rrdtool graph temperatura.png  --end=now --start=1404406800  --width=1024 --height=400 DEF:temp=meteo.rrd:T:LAST  LINE2:temp#FF5522:"Temperatura"

rrdtool graph presion.png  --end=now --start=1404406800  --width=1024 --height=400 -u 1030 -l 990 -r -x HOUR:4:DAY:1:DAY:1:86400:%A -y 10:2  -X 1 DEF:pres=meteo.rrd:P:LAST  LINE2:pres#2255FF:"Presión"