Zur besten Antwort gewählt
Sep 22, 2020 - 22:57
Der NEO Server kann keine Langzeit Datenerfassung bzw. Datenlogging, daran ändert auch so ein Blog Eintrag nichts.
Das Beispiel hinkt an mehreren Stellen:
- Da es kein Archiv im NEO Server gibt, versucht man eben die Anzahl der Log Einträge auf 30 zu beschränken, damit die Variable nicht überläuft
- Ein Diagramm was nur die letzten Messwerte anzeigt, hat wenig sinnvollen Nutzten, wenn will man in der Regel eher Werte in einem engen Intervall aufzeichnen und über den Tagesverlauf, die letzte Woche, des Monats, oder vielleicht sogar den Durchschnitt des Jahres ansehen und zwischen den Ansichten wechseln können. Das ist aber mit dem Ansatz aus dem Blog nicht möglich, weil die Daten ja wegen der Größe der Variable dann gleich wieder verworfen werden. Es ist also weder eine langfristige Aufzeichnung möglich, noch kann man mit dem Diagramm irgendwie navigieren oder dieses sinnvoll im Aussehen anpassen.
- In dem Beispiel im Blog wird der Wert nur alle 30 Minuten geschrieben, damit man überhaupt im Ansatz einen einigermaßen längeren Zeitraum von wenigstens ein paar Stunden aufzeichnet. In dem Moment wenn Du aber die Daten auch einfach in einem kürzeren Intervall aufzeichnen willst, läuft die Variable noch schneller über, ist dann also noch weniger sinnvoll nutztbar.
- Den Graph irgendwie sinnvoll im Aussehen anzupassen im Layout ist so nicht einfach möglich, ohne das Du dann im Detail irgendwie im Skript rumbastelst.
Kurz gesagt eine Datenaufzeichnung auch nur im Ansatz mit dem NEO Server zu versuchen oder daraus ein sinnvolles Diagramm zu erstellen, ist einfach ein fehlendes Feature des NEO Servers, dass man aber auch nicht damit besser macht bzw. korrigiert, indem man da mit so einem Skript und der Beschränkung der Variablen rumbastelt, weil die Anzahl der aufgezeichneten Datenpunkte und die Darstellung unzureichend ist.
Wenn Du wirklich Daten einfach aufzeichnen willst und diese ansprechend in NEO darstellen willst, solltest Du auch Tools nutzten, die für Datenarchivierung und Datenvisualisierung konzipiert wurden und so was beherschen und dann diese Daten in NEO über ein Webseitenelement einbinden.
Ich selber nutzte zur einfachen Aufzeichnung von Daten und deren Darstellung in Kombination mit NEO IP-Symcon und nutzte dort die einfache Datenerfassung und automatische Erstellung von einem passenden Diagramm, das Diagramm ist dann auch einfach anpassbar im Aussehen, Farbe und man kann die Daten über Tage, Monate ja sogar Jahre dann in NEO anschauen. Eingebunden wird das in NEO einfach über ein Webseitenelement und Webgraph. Die Langzeitdaten kann man auch einfach in Excel exportieren und dort dann auch Graphen zur Auswertung erstellen.
Wenn Dir z.B. so ein Diagramm aus IP-Symcon in NEO in der Darstellung nicht ausreichen sollte, kannst Du sehr komplexe Diagramme auch z.B. Grafana nutzen. Dazu lassen sich aufgezeichnete Langzeitdaten aus IP-Symcon einfach in Grafana exportieren über Grafana Modul, eingebunden wird das dann ebenfalls über ein Webseitenelement in NEO.
Wenn das spezielle Daten aus dem NEO Server sind, kannst Du so Daten über Mediola Gateway Service aus dem NEO Server holen und in ein Langzeitarchiv schreiben bzw. daraus ein Diagramm für NEO erstellen lassen.
Von
Vielen Dank für Deine Ausführungen.
Ich muss da noch Erfahrungen und Informationen sammeln, denn ich bin ziemlich frisch in dem Metier.
Da ich den NEO-Server auf dem AIO-Gateway laufen habe, vermute ich, das es so einfach nicht funktioniert, wenn ich die WEB-Seiten von IP-Symcom lese.
Eigentlich würde mir das Beispiel reichen, denn es geht mir vorerst wirklich nur um die Temperaturen eines Tages.
Trotzdem finde ich eine "begrenzte" Stringlänge nicht richtig, im NEO-Server geht es, nur die js-Funktion beschränkt die Zeichenlänge.
Ich könnte ja auch mal einen anderen String, z.B. Straßennamen per js ändern wollen.
Also ich finde ein Bug!
Von
Wenn Du ein AIO Gateway nutzt bräuchstest Du am besten einen zusätzlichen Rechner, kann ein Raspberry oder richtiger Server sein, oder einen NAS um Daten auch dauerhaft zu speichern bzw. Diagramme daraus zu erstellen. Auf der SD Karte von einem Raspberry bzw. Festplatte von einem Server ist die Begrenzung dann nur die Größe der SD Karte bzw. Festplatte.
Auch bei Temperaturen des Tages ist es ja schon eine Frage wie eng Du das messen willst. In dem Blog Beipsiel kommt Du da gerade mal 7 Stunden weit, bei einem Abfrageinterval von 30 Minuten, das ist also noch nicht mal ein Tag. Wenn Du das Abfrageintervall dann noch verkürzt wird der Zeitraum ja noch kürzer, da dann mehr Messwerte pro Zeit anfallen.
Ob Bug oder fehlendes Feature, wenn Mediola wirklich will das man Daten mit dem NEO Server aufzeichnen kann und Diagramme darstellen und dazu nicht externe Quellen einbinden muss, dann sollte hier auch eine vernüftige Lösung angeboten werden und nicht so ein Skript Gebastel.
Da die String Variable an sich eine Größenbegrenzung hat ist aber auch normal, diese ist aber auch nicht dazu gedacht große Datenmengen abzuspeichern. So was speichert man dann eben eher als File auf einer Festplatte / SD Karte bzw. alternativ in einer Datenbank.
Neuen Kommentar hinzufügen