LoxBerry: Statistik Plugin - Diskussion
Einklappen
X
-
Prof.Mobilux
Das mit der roten Ampel könnte nur ein CSS-Problem sein (Screenshot). Die Daten in der Info sind aktuell, der Poller scheint zu laufen.
In der databases.dat in Column 7 steht aber trotzdem überall 0 (Error).
Irgendwas mit rrdcached passt bei mir nicht, beim quickchart bekomme ich im apache-log nur ein "ERROR: Unable to connect to rrdcached: No such file or directory".
Das dürfte daran liegen, dass du ihn mit dem Socket unix:/var/run/rrdcached.sock startest, aber im quickchart mit unix:/tmp/rrdd.sock ansprichst. Wenn ich's im quickchart ausbessere, kommt ein permission denied.
lg, ChristianZuletzt geändert von Christian Fenzl; 07.11.2016, 21:58. -
quickchart line 51:
our §output;
sollte $output; seinEinen Kommentar schreiben:
-
Hallo Michael,
Das databases-Verzeichnis existiert nicht, das müsstest du im Setup anlegen - da kommt beim Anlegen des RRDs ein Fehler.
Wenn ein Fehler beim Anlegen kommt, wird das wahrscheinlich trotzdem in die DB geschrieben und er macht beim 2. Versuch gleich ein 0002.rrd
Ich würde die Intervalleinstellung (1, 3, 5 usw.) noch nach oben vor die Experteneinstellungen holen (ich weiß, dafür braucht es dann pro Pollerintervall ein Standardsetting) und umbenennen in "Abfrageintervall".
Die Experteneinstellungen finde ich ehrlich gesagt zu kompliziert (sogar mir). Für meinen Teil würde ich die Auswahl MIN/MAX/AVG/LAST weglassen und MIN/MAX/AVG immer implizit anlegen.
Du erlaubst außerdem die "human-readable" Eingabe nicht (step: 10m, rows: 90d), und dann wird es wirklich kompliziert, wenn man selbst zum Rechnen anfangen muss.
Wenn ich im Expertenmodus einen Fehler gemacht habe ("Du musst einen Start angeben") und ich gehe mit "Zurück" zurück, dann sind - bis auf die erste - meine RRA-Definitionen weg (das ist natürlich besonders bitter!). Vielleicht den Speichern-Button deaktivieren, wenn die Pflichtfelder nicht passen (Start = 0 wäre grundsätzlich legitim)
Füge ich nach Zurück wieder welche hinzu, zählt er weiter bei der nächsten Nummer nach jener, die ich zuvor angelegt hatte (und nicht mehr angezeigt werden).
Er vergisst jedenfalls die Anzahl der Zeilen nicht, und wenn ich dann alles richtig hab, meckert er eine nicht mehr sichtbare Zeile an ;-) Wenn der Counter richtig gestellt ist, dürfte sich das von alleine lösen.
Beim Starten sind alle Ampeln auf Grün gegangen, und unter Info sehe ich auch realistische Werte, es gingen dann aber hintereinander alle Ampeln auf Rot (Fehler).
Ich hab dann fetch.pl so wie im cron manuell aufgerufen, und bekomme
Can't call method "param" on an undefined value at fetch.pl line 50.
Das ist die Sprache - ich glaub (weiß nicht), dass er das $home nicht bekommt - zumindest nicht wenn ich's manuell aufrufe.
So ist es recht cool, was du in der Kürze rausgehauen hast! Und weil ich mich damit so viel spiele, hab ich noch gar nichts für den Import... :-(
lg, ChristianEinen Kommentar schreiben:
-
Hi,
ja, das habe ich vergessen... Kannst Du mit
nachinstallieren. Im GIT ist es bereits aktualisiert.Code:sudo apt-get install libstring-escape-perl
Einen Kommentar schreiben:
-
Hallo Michael,
Installation läuft sauber durch. Neustart gemacht, und index.cgi lädt.
Beim Statistik hinzufügen bekomme ich einen Error loading page:
Zeile 25 ist use String::Escape qw( unquotemeta );Code:[Sun Oct 30 22:17:12 2016] addstat.cgi: Can't locate String/Escape.pm in @INC (you may need to install the Str ing::Escape module) (@INC contains: /etc/perl /usr/local/lib/arm-linux-gnueabihf/perl/5.20.2 /usr/local/share/ perl/5.20.2 /usr/lib/arm-linux-gnueabihf/perl5/5.20 /usr/share/perl5 /usr/lib/arm-linux-gnueabihf/perl/5.20 /u sr/share/perl/5.20 /usr/local/lib/site_perl .) at /opt/loxberry/webfrontend/cgi/plugins/stats4lox/addstat.cgi line 25. [Sun Oct 30 22:17:12 2016] addstat.cgi: BEGIN failed--compilation aborted at /opt/loxberry/webfrontend/cgi/plu gins/stats4lox/addstat.cgi line 25.
Da fehlt ein Perl-Modul?
lg, ChristianZuletzt geändert von Christian Fenzl; 06.11.2016, 22:57.Einen Kommentar schreiben:
-
Nochmal ein kurzes Update: Habe noch eine "Quickchart"-Funktion in der Statistik-Übersicht hinzugefügt (baut einen Graphen mit RRDTool zur schnellen Kontrolle) sowie die RRDInfo-Funktionalität (ebenfalls aus der Übersicht heraus).
Das macht das Bugfixen in der jetzigen Alpha wesentlich einfacher.
Download direkt aus GIT: https://github.com/mschlenstedt/LoxB...ive/master.zipEinen Kommentar schreiben:
-
Ja, aber RRD interpoliert "falsch":
Ein Digitalwert kommt im Loxone-XML als 1, und ist solange 1, bis im XML 0 kommt (in der Zeit sind keine Datensätze im XML)
RRD würde die 1 mit der nächsten 0 verbinden, was falsch ist.
Gleiches gilt bei Analogwerten, wenn die Statistik mit "jeder Änderung" angelegt ist.Zuletzt geändert von Christian Fenzl; 06.11.2016, 17:04.Einen Kommentar schreiben:
-
Macht das nicht auch RRD? Ich hatte es so verstanden, dass er automatisch interpoliert solange der Wert noch innerhalb des Heartbeats liegt? -
Ich filtere nur die Pulls, weil Loxone auch die Einheiten unter "value" im XML mitschickt. -
Bezüglich Import werde ich doch auf das XML vom Miniserver zurückgreifen. Ich hab damit getestet und es geht überraschend schnell. Dann bin ich auch sorgenfreier, wenn Loxone was am internen Format ändert.
Dummerweise muss ich für die Loxone-Daten noch eine Serialisierung bauen, weil die bei Digital- und tw. Analogdaten nur die Änderungen aufzeichnen. Ich hab aber schon einen Plan.Einen Kommentar schreiben:
-
Ich bin nächste Woche in München im Hotel, da werde ich viel Zeit haben für das Testen und meinen Loxone-Import :-)Einen Kommentar schreiben:
-
Hallo Michael,
d.h. du pullst alles und filterst, was in die DB kommt? Oder filterst du die Pulls?
Weil ersteres hätte keinen Vorteil, das könntest auch an RRD schicken - das bildet dann selbst den Mittelwert für das Step-Intervall.Einen Kommentar schreiben:
-
Hallo zusammen,
eine erste Alpha ist über Git verfügbar: https://github.com/mschlenstedt/LoxB...ive/master.zip
Die Version ist nur für Interessierte/Entwickler/Tester, produktiv kann sie noch nicht eingesetzt werden.
Implementiert ist:- Neue Statistik (= RRDTool-Datenbank) anlegen
- Expertenmodus mit (fast) allen Einstellungen die RRDTool beim Anlegen einer DB bietet (Compute habe ich nicht integriert) sowie Standardmodus (vorgeschlagene Voreinstellungen von Christian Fenzl)
- Holen der Daten Starten / Pausieren für jede Datenbank einstellbar
- Pullen der Daten vom Miniserver und in die Datenbank schreiben
- rrdcached ist voll integriert. Schreiben des Cache alle 60 Min -> Entlastung der SD-Karte
Wer testen möchte: Schaut bitte mal ob die Installationsroutine sauber durchläuft und ob Daten zu unterschiedlichen Zeiten (60s, 180s etc.) geholt werden. Gut wäre auch das Testen unterschiedlicher Werte mit unterschiedlichen Einheiten (diese werden nach dem Pullen automatisch gefiltert - ich hoffe mein Regex passt da ;-)). Ich habe mir dazu testweise Virt. Statusbausteine angelegt und diese in der Visu ausgeblendet. Diese hole ich dann per Stats4Lox.
Zuletzt geändert von Prof.Mobilux; 06.11.2016, 14:14.Einen Kommentar schreiben:
-
Da muss ich dir recht geben. Loxone unterstützt bei den virtuellen Ausgängen keine "Range gesteuerte Ausgabe". D.h. bei analogen virtuellen Ausgängen wird der Wert bei jeder Änderung des Analogwertes geschickt. Das bewirkt in der Praxis, dass hier bei floatenden Analogsignalen (=Realität), der Wert sehr oft gesendet wird, und damit der Miniserver durch den entstehenden Traffic stark belastet wird. Hier wäre es von Vorteil wenn es eine Option gibt, welche es zulässt dass die Werte erst ab einer bestimmten Änderung übertragen werden. Eine solche Funktion stellt Loxone ja schon bei den virtuellen analogen Eingängen zur Verfügung.
Grundsätzlich bin ich ein Freund des "Daten pushen" anstatt die Daten über http abzuholen. Man darf nicht vergessen, dass der Miniserver von einem 400MHz ARM-Prozessor angetrieben wird, dessen Hauptaufgabe es ist, mit seinem Realtimesystem auf Events mit entsprechender Logik in "Realtime" zu reagieren. Jede zusätzliche Belastung, wie sie z.B. http Pull-Kommandos zum Auslesen diverser Werte wären, stressen den Miniserver unnötig. Vielleicht kann man hier auf Loxone konstruktiv einwirken, um das Feature der schwellengesteuerten virtuellen analogen Ausgänge zu implementieren. Der Nutzen wäre ja nicht nur beim User, sondern vor allem bei Loxone, da sie dadurch Rechenpower sparen könnten.
MfG
Hannes
Einen Kommentar schreiben: