NEWS
Ersatz für CCU.io Highcharts
-
Hallo,
noch immer nutze ich auf einem eigenen Raspi CCU.io mit CCU.io Highcharts. Solange es noch geht. Da CCU.io ja ein Auslaufmodell ist, wird es irgendwann wohl nicht mehr weiter gehen.
Deshalb suche ich nach einem Ersatz, der
-
ALLE Datenpunkte automatisch aufzeichnet
-
Charts später offline erstellen läßt
-
Die Daten in allgemein lesbarere und auswertbarer Form speichert. Das habe ich bei CCU.io Highcharts noch nicht gesehen, da scheint das Datenformat proprietär zu sein
Mein ioBroker Admin zeigt mir, daß es
-
History
-
History with influxDB
-SQL History
Adapter für ioBroker gibt.
Jetzt die Fragen an die Experten:
-
Welcher der Adapter erfüllt o.g. Kriterien?
-
Bei mir läuft io.Broker auf einem RasPi 2B, auf dem im Wesentlichen vis betrieben wird. Kann man die angedachte Lösung noch mit draufpacken, oder auf einen eigenen Raspi oder alles zusammen auf eine stärkere Maschine?
Vielen Dank!
-
-
Jetzt die Fragen an die Experten:
-
Welcher der Adapter erfüllt o.g. Kriterien?
-
Bei mir läuft io.Broker auf einem RasPi 2B, auf dem im Wesentlichen vis betrieben wird. Kann man die angedachte Lösung noch mit draufpacken, oder auf einen eigenen Raspi oder alles zusammen auf eine stärkere Maschine?
Vielen Dank! `
Mja experte, geb ma meinen senf/gedanken
Ich bin vorstander von dem SQL adapter, die daten stehen centraal en koennen von uerbaall erreicht/genutzt werden.
Ist auch grosser vorteil neben de "locale file" loesungen.
zur frage 2: komt drauf an was da noch mehr drauf ist. SQL server ist leicht installiert und verbraucht vast nichts. Ich wuerde auch empfehlen nur werte zu oggen welche sich aendern das spart auch ressources.
-
-
Hallo klassisch und erst einmal ein frohes neues Jahr mit allem was dazugehört.
Fangen wir mal hinten an
@klassisch:Welcher der Adapter erfüllt o.g. Kriterien? `
soweit meines Wissens keiner.Was meinst du denn zu. B. mit charts offline erstellen?
Den Rest bekommen wir wohl je nach Priorität hin. Doch erst einmal etwas zur Klärung.
Die von dir genannten Adapter dienen nur der Datensammlung, dies geschah bei ccu.io ohne Alternative immer einfach im Hintergrund. Ich weiß nicht, ob hobbyquaker damals da noch einen Filter eingebaut hatte, aber ich denke, dass dort nicht alle Datenpunkte, die das System hergibt, geloggt werden.
Glaube mir daher bitte dass du nicht alle Datenpunkte wirklich loggen willst.
Welchen dieser Adapter du dann zum loggen nutzen sinnvoll einsetzen könntest hängt von weiteren Faktoren ab.
Die anschließende Visualisierung kann mit den Adaptern rickshaw oder flot durchgeführt werden, wobei Bluefox den flot Adapter inzwischen weit aufgebohrt hat.
Die Macher von Highcharts verlangen inzwischen für nicht 100%ig privat genutzt Installationen erhebliche Lizenzgebühren so dass dies nicht in ioBroker implementiert werden wird.
Da ich sowieso in Kürze die Dokumentation für Datenbanken und Visualisierung neu machen muss, wäre das jetzt eine gute Übung
Gruß
Rainer
-
Die von dir genannten Adapter dienen nur der Datensammlung, dies geschah bei ccu.io ohne Alternative immer einfach im Hintergrund. Ich weiß nicht, ob hobbyquaker damals da noch einen Filter eingebaut hatte, aber ich denke, dass dort nicht alle Datenpunkte, die das System hergibt, geloggt werden. `
Doch es waren einfach alle Werte … ich glaube der einzige Filter war "ack=true" ...
-
Vielen Dank für die Antworten und die Neujahrsgrüße, die ich gerne erwidere!
Mit offline erstellen meine ich die Visualisierung, aber auch das Zugreifen auf einzelne Daten mittels Standardtools, ASCII, XLS oder so etwas.
Wahrscheinlich kann das auch eine Datenbank. Insofern klingt SQL interessant.
Das wäre als SQL-History? Und was ist der Unterschied zu infulxDB?
Die Auswertung, Filterung, Visualisierung würde dann womit erfolgen? rickshaw oder wohl eher flot, weil von bluefox unterstützt? Oder liefert da die Datenbank schon etwas mit oder gibt es dazugehörige 3rd Party Tools? Das muß ja nach meinem Verständnis nicht zwangsweise über ioBroker laufen. Könnte im Notfall dann ja auch auf einem PC laufen, der auf die Raspi DB zugreift?
Wahrscheinlich braucht der Raspi dann auch eine Festplatte? Vielleicht geht ja auch eine 2,5" USB-Platte, die gibt es günstig.
Soweit ich das verstanden habe, schreibt CCU.IO alles mit. Also alle Kanäle, wobei nur Änderungen gespeichert werden. Wenn ich ein neues Gerät, CUxD o.ä. einrichte muß ich in CCU.IO die Rega-Daten neu laden, und RPC-Inits und dann sehe ich den neuen Kanal in Highcharts.
Das finde ich im Prinzip recht praktisch, in Detail brauche ich bei CCU etwas Geduld und einige Anläufe bis wieder alles läuft. Das gleiche Spiel wie nach einem Neustart der CCU.
Und wenn wir schon darüber reden: Welche Lösung wäre dann auch offen für einen Anschluß an einen MQTT Adapter? Durch die billigen WLAN-Rechner wie ESP8266 / WeMos könnte so eine MQTT Server ganz hilfreich sein. Bilde ich mir ein, ohne es wirklich ganau zu wissen. Bisher wickle ich meinen Datenverkehr noch über die CCU ab, aber das muß ja nicht so bleiben.
-
Bei den Datenbanken ist apollon der Profi.
Ich versuche es trotzdem mal:
Die Standard History Instanz speichert alles (ausgewählte) in eine einfache Textdatei.
InfluxDB ist eigentlich optimal für ioBroker sollte aber nicht auf einer SD Karte eines Raspi laufen. Hier wäre auch noch Grafana als Visualisierung möglich-habe ich aber bisher nicht ans Laufen bekommen.
SQL ist natürlich der Standard für viele Datenbanken, sollte aber auch auf einem externen Server oder wenigstens auf einer externen Platte laufen.
Was ccu.io angeht wurden dort meines Wissens nicht nur die Änderungen aufgezeichnet. Dies geht mit allen Varianten bei ioBroker, sogar noch zusätzlich mit der Option in bestimmten Zeitabständen gleiche Werte oder unterschiedliche Werte erst ab einer bestimmten Abweichung aufzuzeichnen.
Gruß
Rainer
-
Da hat Homoran grundsätzlich recht
Wenn es nur ein paar Werte sind (wieviele Geräte hast DU denn wo Du speichern willst?) dann ist History erstmal gut. Mit zunehmender Zahl braucht das aber einiges an I/O und damit auch CPU.
InfluxDB ist eine Datenbank die auf "zeitwerte" (wie hier) spezialisiert ist … einziges Limit: bei 32bit Systemen ist bei 2GB DB-grösse Ende und brauchst dann ein 64bit System.
Bei SQL kannst du ne SQLite (rate ich ausser zum testen von ab), MySQL, MSSQL oder PostgreSQL-DB nutzen und dann hast du eine relationale DB-Struktur.
Mit InfluxDB und SQL-DBs kannst Du auch ohne ioBroker zugreifen z. B per SQL oder andere Visualisierungstools (z.B. das genannte Grafana) nutzen.
Das Featureset der 3 Adapter ist inzwischen an sich identisch (also welche Werte werden wann und wie oft geloggt und so). Daher ist die wichtige Frage "was willst/kannst du".
Wie gesagt: Als Einstieg ist der Normale "History"-Adapter ne Idee ... Der wäre vergleichbar zu ccoio weil es da auch in textfiles ging.
-
Wenn es nur ein paar Werte sind (wieviele Geräte hast DU denn wo Du speichern willst?) dann ist History erstmal gut. Mit zunehmender Zahl braucht das aber einiges an I/O und damit auch CPU. ` Eigentlich möchte ich, daß alle Kanäle (Datenpunkte der CCU) mitprotokolliert werden wie bei CCU.IO. Also ohne, daß ich alle einzeln auswählen muß. Und wenn ich einen neuen Kanal auf der CCU anlege und in der History-Instanz auf neu laden klicke, soll er den neuen Datenpunkt auch mitloggen.
Ich habe bisher noch nicht verstanden, ob das so geht. Ich habe verstanden, daß sie in diesem Punkt die drei Alternativen nichts schenken.
Dann hätte ich gerne noch ein Dateiformat, welches einigermaßen transparent ist, wo ich Backups machen kann und auch noch nach Jahren möglichst auch außerhalb der ioBroker-Welt noch analysieren kann. Wenn ich es richtig verstanden habe, wären hier die Datenbankbasierten Systeme besser.
Wie gesagt: Als Einstieg ist der Normale "History"-Adapter ne Idee … Der wäre vergleichbar zu ccoio weil es da auch in textfiles ging. ` Ja, das ist ein pragmatischer Ansatz. Dann kann man sich an das Thema mal herantasten.
Habe jetzt Hisory 1.5.0 als Instanz.
Das Konfigurationsmenue zeigt mir das Speicherverzeichnis. Aber dort wird nichts abgespeichert. Wahrscheinlich habe ich bei der Konfiguration einen button übersehen oder so.
-
Hallo,
Nein hast du nicht. IOBroker speichert die Werte der Datenpunkte nicht automatisch. Was auch aufgrund der Datenmenge nicht sinnvoll ist. Aber man kann es leicht einschalten.
Unter dem Reiter Objekte kann man auswählen welchen Datenpunkt er loggen soll.
Wenn ich mich recht erinnere (kann grad nicht auf meine Installation) dann gibt es ganz rechts oben einen Button (glaube ein Zahnrad) wo man alle Punkte im Filter ein oder ausschalten kann.
Lg
Günther
-
Hi,
Wenn ich mich recht erinnere (kann grad nicht auf meine Installation) dann gibt es ganz rechts oben einen Button (glaube ein Zahnrad) wo man alle Punkte im Filter ein oder ausschalten kann. `
das stimmt so.Man kann quasi mit einem Klick für alle angezeigten Datenpunkte die Historisierung einschalten, usw.
Gruß,
Eric
-
Nochmals Hallo
Hier gibt es eine kleine Hilfe!
http://www.iobroker.net/?page_id=144&lang=de
dann gibt es ganz rechts oben einen Button (glaube ein Zahnrad) wo man alle Punkte im Filter ein oder ausschalten kann. `
Richtig! Siehe hierhttp://www.iobroker.net/?page_id=5495&l … 8sonstiges
Allerdings wird dies nicht ganz so einfach
@klassisch:d in der History-Instanz auf neu laden klicke, soll er den neuen Datenpunkt auch mitloggen. `
Da musst du dann im pulldown "ohne" auswählen und diese auch aktivieren.Bevor du jedoch alle Datenpunkte auf loggen stellst, Klappe mal einfach unter Objekte alle auf. Das kann ein wenig dauern. Und entscheide dann ob du diese Daten wirklich alle brauchst.
Gruß
Rainer
-
Vielen Dank für die Hilfen!
Habe jetzt mal alle Datenpunkte auf Loggen eingestellt - sorry Rainer, bitte nicht persönlich nehmen. Ich habe tausende von Datenpunkten und möchte die wirklich nicht einzeln durchgehen. Früher hätte ich das gemacht, aber anläßlich des CCU.IO-Logs habe ich mal den Speicherbedarf überschlagen und da kam man mit ein paar GByte weit. Selbst wenn es jetzt mehr Speicher kosten sollte - dann wird eben nachgerüstet.
Der CCU.IO konnte das problemlos komplett loggen und dann sollte das mit History auch möglich sein. Und falls nicht, dann ist es nicht das richtige Tool für mich.
Jedenfalls füllt sich jetzt der History Ordner. Also schon mal deutlich weiter.
Wenn ich das richtig interpretiere scheint es pro Abtastwert ein json file zu geben mit Wert, unixtime ack und q(uality)?
Uptime sagt, daß der Raspi im unteren einstelligen Berieich rumdümpelt. Da sollte nichts passieren.
Jetzt lasse ich noch etwas sammeln und morgen teste ich dann die Auswertung.
Wenn ich es richtig verstaden habe, dan ist FLOT erstmal das Tool der Wahl.
Mal sehen, wie das dann geht und wie sich das anfühlt. Wenn es zu träge wird, gehen wir einen Schritt weiter in Richtung Datenbank.
-
Würde dir trotzdem empfehlen nicht alles zu loggen, man kann ja auch per instance alles aktivieren (also zb alles innerhalb Homematic Adapter) da Iobroker alle 30 sec Daten von ccu abruft hast du pro Minute 2x Alle datenpunkte in der db das klingt nicht sinnvoll und macht querys lahm.
Zur Darstellung ist Flott das tool, Happy testing
Sent from my iPhone using Tapatalk
-
sorry Rainer, bitte nicht persönlich nehmen. `
Mach ich nicht, keine Sorge!Ich wollte auch erst alles loggen, bis ich dann sah was es alles an Datenpunkten gibt.
Solltest du es dir später einmal anders überlegen, gibt es ja die Möglichkeit durch geschicktes Auswählen der Filterkriterien über mehrere Spalten vieles zu erschlagen, so dass es nicht zu viel Arbeit wird. Da arbeite ich bei jeder neuen Testinstallation auch noch dran
Denk auch an die Datenpunkte, die nur in der erweiterten Ansicht sichtbar sind (Systemdaten).
Gruß
Rainer
-
man kann ja auch per instance alles aktivieren (also zb alles innerhalb Homematic Adapter) da Iobroker alle 30 sec Daten von ccu ` Vielen Dank für den Hinweis. Aber wie geht das? Habe eben in der objects Ansicht die Instanz vis higlighted und dann "Aktiviert" abgewählt. Dann hat er aber alle Datenpunkte abgewählt. Nicht nur die von der Instanz vis.
-
Über den Spalten befinden sich Felder in die Filterkriterien eingetragen werden können.
Vis ist vielleicht nicht das beste Beispiel oder ich übersehe was.
Wenn du im ersten Feld "rpc" eingibst siehst du nur die Datenpunkte von HomeMatic Geräten.
Wenn du jetzt noch im nächsten Feld "Temperature" eingibst schränkt du die Auswahl auf entsprechende Datenpunkte ein usw….
Gruß
Rainer
-
Vielen Dank. Habe jetzt in der ersten Spalte "Id" rpc eingegeben und das Häkchen gesetzt. Das sollte dann so passen. Bei der Auswertung sehen wir weiter!
-
Meine ersten Gehversuche mit FLOT sind noch nicht ganz befriedigend verlaufen. Bitte nicht falsch verstehen, ich will hier nichts schlecht reden. Ich suche nur einen adäquaten Ersatz für Highcharts. Und es ist sehr wahrscheinlich, daß FLOT das kann, ich aber noch nicht den richtigen Weg gefunden habe.
-
Ich habe ein CUxD Device CUX9001001 mit dem Namen "Heizbrenner-Ventil"
-
in Highcharts gebe ich ins Datenauswahlfeld einfach "brenner" ein und alle Datenpunkte, die "brenner" im Namen enthalten, erscheinen. Sofort sehe ich den gewünschten Datenpunkt und kann ihn auswählen.
-
Bei FLOT finde ich so den Datenpunkt nicht
– Auch bei Räumen kann ich nichts auswählen
-- Ich muß hm-rpc.1 öffnen
-- dann CUX9001001 öffnen (erst mal wissen, daß das so heißt, also Homematic WebUi öffnen und suchen)
-- dann "1"
-- und erst dann sehe ich den Datenpunkt
-
Dann suche ich noch einen zweiten Datenpunkt, der aber einen deutlich anderen Wertebereich hat
-
Autoskalieren, geht noch nicht. Aber man kann manuell die 2 Achsen auswählen und manuell skalieren. Damit kann man für den Anfang leben
-
Ich vermisse eine Legende zur Zuordnung der Linien. Ok, unter Options könnte da etwas zu finden sein. Da muß ich noch etwas suchen.
Aber die Suche der Datenpunkte bleibt für mich eine Schwierigkeit. Wobei ich nicht weiß, ob das ein prinzipielles Thema ist (Daten nicht vorhanden) oder nur noch nicht implementiert, weil es bisher noch niemand vermißt hat.
Geht das bei einem datenbankbasierten Ansatz besser?
-
-
Hallo,
Punkt 1: Datenpunktauswahl über Text:
Das funktioniert. Wenn du im Flot bist, dann links oben Linie hinzufügen. Dann Unter Instanz deine auswählen wo du die Datenpunkt gespeichert hast (Bei mir SQL.0, bei dir wahrscheinlich HISTORY.0).
Dann neben dem ID Feld auf den Button mit so einem offenen Ordner Symbol clicken.
In dem Fenster welches dann aufgeht kannst du unter Namen den Text eingeben welchen du suchst. (Wenn du vorher noch links oben "Expand all Nodes" clickst, dann gehen alle Ordner auf und du siehst das Ergebnis der Suche gleich). (Click auf das Bild unten)
Punkt 2: Autoskalieren:
Wenn in den Felder "min" und "max" (neben der Farbauswahl) keine Werte eingetragen sind dann wir autoskaliert.
Punkt 3: Legende:
Diese findest unter dem Punkt "Options". Dort kann man sie einschalten, Position bestimmen und noch vieles mehr.
LG
Günther
1180_flot.gif -
. Ich suche nur einen adäquaten Ersatz für Highcharts. Und es ist sehr wahrscheinlich, daß FLOT das kann, ich aber noch nicht den richtigen Weg gefunden habe. `
Einen Satz hatte ich ineinander einem der ersten Posts wieder gelöscht.Darin hatte ich ganz vorsichtig darauf hinweisen wollen, dass es sein könnte, dass dich fue Funktionsvielfalt von flot im Vergleich zu highcharts erschlagen könnte.
Was dadurch Datenpunkt Auswahlmenü angeht könnte da mochte ein Bug drin sein, dass man nicht nach Raum filtern kann.
Den Brenner musst du unter "Name" suchen, nicht unter ID.
Evtl. Hast du für cuxd noch keinen hm-rpc angelegt? (Edit: hm-rpc.1 ist das)
Autoskalieren geht, sobald die Daten den Bereich der x-Achse überschreiten.
Fixe Achsen kannst du festlegen, gemeinsame Achsen im Zahnrad, dafür bei den writeren Datenreihen "nichts" unter Achsenbeschriftung.
Bei vielen verschiedenen Skalierungen als DesignHilfe vielleicht "rechts/links farblich" auswählen
Legende befindet dich ganz rechts im Block Options.
Standardmäßig werden die Namen der Datenpunkte übernommen. Wenn die zu lang sind kannst du die im Block Input data anders benennen
Was vergessen?
Gruß
Rainer