Forum: PC Hard- und Software RRDGraph - Daten nicht mitteln


von K. J. (Gast)


Lesenswert?

Moin,

Ich hab ein kleineres Problem mit dem RRDGraph dieser mittelt mir die 
Daten die Tagesansicht ist noch ok, aber ab der anzeige einer ganzen 
Woche werden die Daten anhand der Datenpunkte gemittelt, gibt es da eine 
Möglichkeit das zu verhindern ?

An den Daten kann es nicht liegen ich habe diese in Mysql und diese 
stimmen, unten ist der befehl den ich nutze, leider ist das FAQ vom 
RRDTool etwas blöd geschrieben ich hab es nicht herausfinden können.

rrdtool graph Schlafzimmer-year.png --imgformat=PNG --start=-1year 
--width=903 --height=245 -v "Schlafzimmer-28.06.2016-11:16:58" 
DEF:temp=<sqldatastuf>=1:avg:AVERAGE LINE1:temp#FF0000:temp 
DEF:licht=<sqldata>:avg:AVERAGE LINE1:licht#00FF00:licht

mfg K.J.

von (prx) A. K. (prx)


Lesenswert?

Liegen die Daten ausschliesslich in der SQL Datenbank, oder wird als 
Basis von rrdgraph eine RRD Datenbank verwendet?

von K. J. (Gast)


Lesenswert?

Die Daten Ligen nur in einer SQL-Datenbank, hab es aber schon gegen 
gecheckt bei RRD-Datenbanken ist es das gleiche.

von (prx) A. K. (prx)


Lesenswert?

Bei RRD Datenbanken könnte es an deren Definition liegen. Immerhin 
besteht eine solche Datenbank auf mehreren Tabellen mit jeweils 
festgelegtem Intervall und Zeithorizont. Die nächstgröbere Tabelle 
entsteht durch Zusammenfassung mehrerer Samples der vorherigen.

Eine Grafik kann aber nur jene Tabelle verwenden, die den gesamten 
darzustellenden Zeithorizont umfasst, verwendet also je nach 
Zeithorizont von Grafik und Datenbankdefinition nicht unbedingt jene 
Auflösung, die du gerne hättest.

Auf SQL habe ich das noch nicht verwendet und weiss nicht, wie sich das 
abbildet.

: Bearbeitet durch User
von K. J. (Gast)


Angehängte Dateien:

Lesenswert?

Bin leider nicht so der Experte mit SQL aber soweit hab ich das 
hinbekommen, die werte werden als Double(20) gespeichert das ist die 
Vorgabe von RRD geht sicher auch anders.

Struktur ist im Anhang,

RRDKeyID ist ne Vorgabe vom RRDTool das ist die ID der DB da man auch 
mehrere einzelne Einträge machen kann pro DB da hab ich aber drauf 
verzichtet da sonst die DB übers Jahr riesig wird, nehme für alles eine 
ID und schreibe nur ganze Zeile in die DB.

RRDTime ist der Timestab in UNIX-Zeit und der Rest die einzelnen 
Sensoren, schreiben mache ich alle 5min. eine neue Zeile in die DB, 
Öfter macht auch kein sin das kleinste was ich Auflöse sind die Tages 
Daten, ich wollte das mal Testen so kann ich auch andere Tools nutzen 
zum Auswerten, und ich kann Fehlerkorrekturen machen was bei den 
herkömmlichen RRD DBs ziemlich Kompliziert ist.

Infos: http://oss.oetiker.ch/rrdtool/doc/rrdgraph_libdbi.en.html

Momentan mache ich das ganze mit PHP, hab seit Jahren die RRD 
Datenbanken in Benutzung aber da ist das oben genante nicht so einfach 
vielleicht wird es auch mit PHP7 einfacher da gibt es dann endlich PHP 
Libs für das RRDTool, hab es aber noch nicht getestet PHP7 lässt sich 
momentan nicht auf ARM Bauen ;-(

Es ist auch Schneller mit SQL da dauert das Generieren vom 20 Graphen 
~15sec mit den RRDDatenbanken fast ~30sec

von Axel S. (a-za-z0-9)


Lesenswert?

K. J. schrieb:
> Ich hab ein kleineres Problem mit dem RRDGraph dieser mittelt mir die
> Daten die Tagesansicht ist noch ok, aber ab der anzeige einer ganzen
> Woche werden die Daten anhand der Datenpunkte gemittelt, gibt es da eine
> Möglichkeit das zu verhindern ?

Ja.

> rrdtool graph Schlafzimmer-year.png --imgformat=PNG --start=-1year
> --width=903 --height=245 -v "Schlafzimmer-28.06.2016-11:16:58"
> DEF:temp=<sqldatastuf>=1:avg:AVERAGE LINE1:temp#FF0000:temp
> DEF:licht=<sqldata>:avg:AVERAGE LINE1:licht#00FF00:licht

Einmal darfst du raten, wofür das "AVERAGE" in der Definition der 
Datenquelle steht.

RTFM!

von K. J. (Gast)


Lesenswert?

JA recht hast du aber nur halb "MAX" ist es hatte ich auch mehrfach 
ausprobiert hatte aber nix gebracht was noch fehlte ist ein :step=300 
für die 5min Auflösung.

von K. J. (Gast)


Angehängte Dateien:

Lesenswert?

hab es soweit fertig ich hänge das einfach mal an ist Script generiert 
deswegen ist es leider etwas unübersichtlich, aber vielleicht kann es 
jemand gebrauchen.

Bild im Anhang

rrdtool graph /var/www/img/rrd/Abstellkammer-month.png --imgformat=PNG 
--start=-1month --width=903 --height=345 -v 
"Abstellkammer-11.07.2016-21:29:44"  -c GRID#9F9F9F -c BACK#FFFFFF -c 
SHADEA#FFFFFF -c SHADEB#FFFFFF -c CANVAS#FFFFFF -c MGRID#000000 -c 
FONT#000000 -c AXIS#000000 -c FRAME#000000 -c ARROW#000000 
DEF:temp=<<<SQLGEDÖNS>>>:avg:MAX:step=300 LINE1:temp#FF0000:"temp(°C)" 
GPRINT:temp:MIN:"Min\: %2.1lf" GPRINT:temp:LAST:"Last\: %2.1lf" 
GPRINT:temp:AVERAGE:"Mean\: %2.1lf" GPRINT:temp:MAX:"Max\: %2.1lf\j" 
DEF:licht=<<<SQLGEDÖNS>>>:avg:MAX:step=300 
LINE1:licht#00FF00:"licht(%/10)" GPRINT:licht:MIN:"Min\: %2.1lf" 
GPRINT:licht:LAST:"Last\: %2.1lf" GPRINT:licht:AVERAGE:"Mean\: %2.1lf" 
GPRINT:licht:MAX:"Max\: %2.1lf\j"

MFG

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.