Autor Thema: Neues Modul: 93_InfluxDBLog  (Gelesen 5374 mal)

Offline d.schoen

  • Jr. Member
  • **
  • Beiträge: 90
Neues Modul: 93_InfluxDBLog
« am: 05 Mai 2017, 11:52:12 »
Hallo zusammen, wie der Titel des Threads schon sagt: Ich habe ein neues kleines Modul entwickelt.

Durch den Umzug vom Pi2 auf einen "richtigen" Server hat sich auch meine Infrastruktur für das Charting geändert. Ich setze da mittlerweile auf die Timeseries-DB InfluxDB (https://www.influxdata.com/) und das Charting Frontend Grafana (https://grafana.com/).

Bisher hatte ich mir meine Messwerte via DBLog in eine MySQL Datenbank gespeichert. Von dort dann über ein Script in die InfluxDB. Ich dachte mir aber, das muss doch auch direkt gehen.

Daher nun das Modul dafür.

Es kann über
update add https://raw.githubusercontent.com/dsgrafiniert/fhem-InfluxDBLog/master/controls_influx.txt in die normale Updateroutine von FHEM eingebunden werden.

Definiert wird das ganze dann folgendermaßen:
define <name> InfluxDBLog <host> <port> <DB> <username> <passwort> <regex>
Beispiel:
define influxlog InfluxDBLog localhost 8086 fhem user pw .*
Würde mich über Feedback aus der Community sehr freuen.

Viele Grüße
d.schoen
FHEM 5.7 auf RasPi2
COC 868MHz, Jeelink Clone
Devices: IT, HomeMatic, LaCrosse, ENIGMA2, LG-TV, Thinkingcleaner (iRobot Roomba), LIFX Wifi-Bulbs
Helper: TelegramBot, Homebridge (Siri), Geofency
Gefällt mir Gefällt mir x 4 Liste anzeigen

Offline Thyraz

  • Sr. Member
  • ****
  • Beiträge: 510
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #1 am: 05 Mai 2017, 12:13:28 »
Hallo d.schoen

Bin im Moment auch etwas unzufrieden mit meinen Charts in FHEM, vor allem wenn man mal schnell kurz was auswerten will, das man bisher noch nicht als Chart angelegt hatte.

InfluxDB und Grafana sieht sehr schön aus.
Gerade auch die Wahl des Zeitbereichs etc. was sogar über Mobilgeräte anständig bedienbar ist. :)
Werde ich mir später daheim mal ansehen.

Falls das gefällt, muss ich nur noch sehen wie ich die Altdaten in die InfluxDB bekomme...
« Letzte Änderung: 05 Mai 2017, 12:18:44 von Thyraz »

Offline Thyraz

  • Sr. Member
  • ****
  • Beiträge: 510
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #2 am: 05 Mai 2017, 23:55:34 »
Wollte nur mal die Rückmeldung geben, dass das Modul soweit super funktioniert.
Hab die regex von meiner DBLog Instanz übernommen und jetzt nach ein paar Stunden mitloggen in Grafana die ersten Temperaturcharts meiner Thermometer erstellt. :)

Sehr cool und danke auch dafür, mich überhaupt auf Grafana gebracht zu haben.
Das war genau was ich gesucht habe um eine etwas flexiblere und modernere Charting Lösung zu bekommen.

Offline Benni

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1655
  • FHEMinist
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #3 am: 06 Mai 2017, 07:42:12 »
Hätte man die InfluxDB-Unterstützung nicht sinnvollerweise in das DBLog-Modul integrieren können?
FHEM (FL 9.9) (configDB+DbLog) auf Debian Wheezy.
Jede Menge HM mit 2x HMUART (WeMos+esp-link) über VCCU.
UniRoll an CUL868. Sebury F2-2 RFID über ESPEasy
Module: 98_rssFeed und 98_QRCode

Offline d.schoen

  • Jr. Member
  • **
  • Beiträge: 90
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #4 am: 06 Mai 2017, 08:19:42 »
Wäre sicher irgendwie gegangen, allerdings ist der Zugriff auf eine InfluxDB grundlegend anders als der Zugriff auf eine relationale, klassische (bspw. MySQL) DB.

Es darf mein Code und/oder die Funktionalität natürlich gern in das DBLog-Modul integriert werden, für meine Zwecke ging es über ein eigenes Modul einfacher und schneller.
FHEM 5.7 auf RasPi2
COC 868MHz, Jeelink Clone
Devices: IT, HomeMatic, LaCrosse, ENIGMA2, LG-TV, Thinkingcleaner (iRobot Roomba), LIFX Wifi-Bulbs
Helper: TelegramBot, Homebridge (Siri), Geofency

Offline DS_Starter

  • Developer
  • Hero Member
  • ****
  • Beiträge: 2088
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #5 am: 06 Mai 2017, 17:33:47 »
Hi Benny und d.schoen,

eine Integration in das DbLog-Modul als weitere unterstützte DB wäre sicherlich sinvoll weil integrativ.
Ich würde mich nach meinem Urlaub auch damit mal beschäftigen und dich d.schoen bitten mich dabei zu unterstützen. (Benny natürlich auch  ;) )
Vorher habe ich aber noch ein paar laufendende ToDos in dem DbLog-Thread  hier -> https://forum.fhem.de/index.php/topic,65860.0.html . (Kein schlechter Thread um auch dieses Thema weiter zu verfolgen)
Von allen unterstützen DBs habe ich mir Testinstanzen aufgebaut und bräuchte die dann natürlich auch für die Influx.

@d.schoen, kannst du ein paar Links/Tipps zusammenstellen die die Installation dieser DB und Grafana auf Debian beschreiben ?
Ich hatte damit bisher nichts zu tun und kenne mich damit nicht aus. Es würde sehr helfen und Zeit sparen.

Also das ist lediglich ein Angebot wenn eine solche Integration gewünscht ist .... und sie muß natürlich auch sinnvoll umsetzbar sein mit diesem DB-Typ.

viele Grüße
Heiko
ESXi 6.5 auf NUC6i5SYH mit FHEM Gastsystemen auf Debian 8 64 Bit  (Jessie) & Synology iSCSI-LUNs,
DbLog/DbRep mit MariaDB auf Synology 415+,
Homematic, IT, FS20, Cams in Synology Surveillance Station (SSCAM), CUL 433, CUL 868, HM-CFG-LAN
Gefällt mir Gefällt mir x 1 Liste anzeigen

Offline Benni

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1655
  • FHEMinist
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #6 am: 06 Mai 2017, 18:52:13 »
Hallo Heiko,

stelle mich natürlich gerne als Tester zur Verfügung.
Habe zwar bisher auch null Erfahrung mir InfluxDB oder Grafana, aber dann ist das Wahrscheinlich mal wieder so eine Gelegenheit, was Neues zu lernen.  ;D

Gruß Benni.
FHEM (FL 9.9) (configDB+DbLog) auf Debian Wheezy.
Jede Menge HM mit 2x HMUART (WeMos+esp-link) über VCCU.
UniRoll an CUL868. Sebury F2-2 RFID über ESPEasy
Module: 98_rssFeed und 98_QRCode

Offline DS_Starter

  • Developer
  • Hero Member
  • ****
  • Beiträge: 2088
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #7 am: 06 Mai 2017, 19:11:59 »
Zitat
Habe zwar bisher auch null Erfahrung mir InfluxDB oder Grafana, aber dann ist das Wahrscheinlich mal wieder so eine Gelegenheit, was Neues zu lernen.

Na dann sind wir schon zwei  :D

Ich schau mal wann ich dazu komme, will erstmal noch ein paar offene Dinge in dem Thread abarbeiten und erfahrungsgemäß dauert es länger als ursprünglich gedacht.
Also bis dann mal wieder ...

Heiko
ESXi 6.5 auf NUC6i5SYH mit FHEM Gastsystemen auf Debian 8 64 Bit  (Jessie) & Synology iSCSI-LUNs,
DbLog/DbRep mit MariaDB auf Synology 415+,
Homematic, IT, FS20, Cams in Synology Surveillance Station (SSCAM), CUL 433, CUL 868, HM-CFG-LAN

Offline Thyraz

  • Sr. Member
  • ****
  • Beiträge: 510
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #8 am: 06 Mai 2017, 21:44:21 »
Das wäre natürlich sehr cool. 😊

Dann könnte man sein normales DBLog und Grafana unter einen einen Hut bekommen.
Das Ganze sieht auf alle Fälle schonmal recht performant aus. Auf meinem Pi2 läuft jetzt zusätzlich Influx und Grafana und die Charts sind sehr schnell geladen gegenüber Fhem Plots oder FTUI Charts.

Bin mir jetzt nicht sicher woran das liegt.
Ob InfluxDB mit seiner zeitorientierten Datenbank hier seine Stärken ausspielt,
Oder Grafana hier besser optimiert ist.

Grafana passt sich auch gut an Displays von Handys an und die Chartd können auch in andere Seiten embedded werden.

Debian Influx Repo findet man hier:
https://docs.influxdata.com/influxdb/v1.2/introduction/installation/

Grafana hat auch eines:
https://grafana.com/grafana/download

Grafana für Pi:
https://github.com/fg2it/grafana-on-raspberry

InfluxDB kann man dann über das Webinterface anlegen.
(Achtung Standardport nach der Installation ist 8083 wie auch bei Fhem.)

Dort kann man im "Query Template" Menu eine neue Datenbank anlegen.
Die Datenbankanbindubg selbst lauscht nachher auf Port 8086.

Grafana ist hingegen unter Port 3000 erreichbar.
Dort muss InfluxDB als neue Datasource angelegt werden.
Bei mir gab es einen kleinen Stolperstein:
Der Add Datasource Eintrag im Menü war nach der Login Erstellung im Webinterface noch nicht sichtbar.

Erst als ich mir zusätzlich übers Menü eine "Organisation" angelegt habe, ist das Datasource Menü aufgetaucht.

Hier mal noch ein Screenshot wie man die Graphen konfiguriert.
Bei weiteren Fragen zu Installation/Konfiguration einfach melden.

Offline d.schoen

  • Jr. Member
  • **
  • Beiträge: 90
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #9 am: 07 Mai 2017, 18:43:05 »
Zunächst mal danke für die rege Diskussion und das offenkundige Interesse an der Idee.

@Heiko: Natürlich unterstütze ich gern, auch wenn ich mich beim besten Willen nicht als "Profi" für InfluxDB bezeichnen würde.

Die Zusammenfassung von Thyraz ist auf jeden Fall schon mal sehr gut, danke dir!
Ich habe mich für InfluxDB und Grafana grundsätzlich an folgende Anleitung gehalten (habe hier eine Docker-Infrastruktur): https://blog.laputa.io/try-influxdb-and-grafana-by-docker-6b4d50c6a446

Allerdings weiß ich tatsächlich nicht, inwieweit die Integration in das DBLog Modul sinnvoll ist. InfluxDB ist eine NoSQL Datenbank und verwendet als Interface für Queries und Dateneinspeisungen eine HTTP-Schnittstelle: https://docs.influxdata.com/influxdb/v1.2/guides/writing_data/
FHEM 5.7 auf RasPi2
COC 868MHz, Jeelink Clone
Devices: IT, HomeMatic, LaCrosse, ENIGMA2, LG-TV, Thinkingcleaner (iRobot Roomba), LIFX Wifi-Bulbs
Helper: TelegramBot, Homebridge (Siri), Geofency

Offline DS_Starter

  • Developer
  • Hero Member
  • ****
  • Beiträge: 2088
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #10 am: 07 Mai 2017, 19:14:50 »
Hallo Thyraz und d.schoen,

erstmal vielen Dank für die Informationen.
Es wird auf jeden Fall noch etwas Zeit vergehen ehe ich mich damit auseinandersetzen kann und die Sinnfälligkeit dieses Vorhabens kann ich momentan auch noch nicht einschätzen. Schauen wir einfach mal ...

Was mir aber schon bezüglich der Modularchitektur durch den Kopf ging ....
Wird den euerer Meinung nach der FHEM-User die InfluxDB als vollkommenen Ersatz zu einer SQL-DB verwenden oder eher als Add-on, welches quasi neben einer SQL-DB mitlaufen wird.  Sollte letzteres der Fall sein könnte man über ein Attr die DB zuschaltbar machen und die Regex würden dan automatisch mit greigen. Im anderen Fall müßte man alle nicht zutreffenden Set/get-Kommandos und/oder auch Attribute ausblenden sobald man Influx nutzt und umgedreht.
Das hat dann natürlich ziemliche Auswirkungen auf den zu betreibenden Aufwand .

Ich hoffe mein Gedankengang ist deutlich geworden und mich iteressiert eure Meinung dazu.

Grüße
Heiko
ESXi 6.5 auf NUC6i5SYH mit FHEM Gastsystemen auf Debian 8 64 Bit  (Jessie) & Synology iSCSI-LUNs,
DbLog/DbRep mit MariaDB auf Synology 415+,
Homematic, IT, FS20, Cams in Synology Surveillance Station (SSCAM), CUL 433, CUL 868, HM-CFG-LAN

Offline d.schoen

  • Jr. Member
  • **
  • Beiträge: 90
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #11 am: 07 Mai 2017, 19:38:11 »
Puuh.... Ich denke das lässt sich kaum pauschal beantworten, da beide Settings denkbar sind.

Ich kann nur aus meiner Perspektive sprechen: Ich setze die InfluxDB alternativ zur bisherigen MySQL DB ein. Bisher diente die mir auch nur um numerische Werte abzuspeichern und damit die Plots zu erstellen. Da ist InfluxDB und Grafana eben DEUTLICH schneller und schöner.

Sicher ist aber auch der Use-Case, die InfluxDB parallel zu betreiben. Hierfür würde ich aber z.B. folgendes Script empfehlen: https://github.com/GreatLakesEnergy/Mysql-to-influxdb
FHEM 5.7 auf RasPi2
COC 868MHz, Jeelink Clone
Devices: IT, HomeMatic, LaCrosse, ENIGMA2, LG-TV, Thinkingcleaner (iRobot Roomba), LIFX Wifi-Bulbs
Helper: TelegramBot, Homebridge (Siri), Geofency

Offline wuast94

  • Full Member
  • ***
  • Beiträge: 113
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #12 am: 08 Mai 2017, 16:59:16 »
ihr behandelt gerade genau das was ich herausfinden wollte :D manchmal hat man auch glück.

Ich würde als "Laie" schon fast sagen das der größte Teil das dblog in Verbund mit MySQL nur für Plots nutzt.. dementsprechend könnte man sagen man kann MySQL weg lassen und einfach InfluxDB nehmen.

Allerdings gibt es sicherlich auch viele die mit Plots arbeiten (floorplan, Telegramm etc) und dementsprechend auf das vorhandene System nicht verzichten können. es sei denn alle anderen Module werden erweitert um die Funktion was denke ich ne menge arbeit heißt. Bin zwar kein Dev aber man hat ja bekannte und sammelt da seine Erfahrungen von außerhalb, ihr habt übrigens Größten Respekt von mir :)

Naja kurzgefasst denke ich das ein paralleles System mit beiden Datenbanken am sinnvollsten wäre. (und ich denke Leistungs Technisch wird da auch kein PI anfangen zu Brennen wenn da zwei DB´s laufen)
schön wäre natürlich wen dieses parallele loggen in 2 DB´s (und das kopieren der vorhandenen) möglichst automatisch passieren kann.

Ich hoffe das ich damit einen Sinnvollen Beitrag/Hilfe leisten konnte :)
CCU2 + 3 HM-CC-RT-DN
RspFHEM + Denon AV Reciver +
Funksteckdosen 433Mhz + Z-Wave Fibaro Wall Plugs
Bald Alexa Sprachsteuerung

Offline Thyraz

  • Sr. Member
  • ****
  • Beiträge: 510
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #13 am: 09 Mai 2017, 08:47:39 »
Aber die anderen Module (Telegram etc.) greifen ja wahrscheinlich über DBLog auf die Daten zu, und nicht direkt auf die Datenbankschnittstelle, oder?
Würde InfluxDB also wirklich in DBLog integriert, könnte man sie schon als einzige Datebank für alle Zwecke verwenden denke ich...

Offline wuast94

  • Full Member
  • ***
  • Beiträge: 113
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #14 am: 09 Mai 2017, 15:45:08 »
Aber die anderen Module (Telegram etc.) greifen ja wahrscheinlich über DBLog auf die Daten zu, und nicht direkt auf die Datenbankschnittstelle, oder?
Würde InfluxDB also wirklich in DBLog integriert, könnte man sie schon als einzige Datebank für alle Zwecke verwenden denke ich...

Ich glaube nicht da die Grafen (auch je nach Theme/Style) als bild exportiert werden so wie sie in Fhem zu sehen sind .. also als wenn da n screen von gemacht wird :D und grafana ist ja dann nicht in fhem intigriert sondern eine extra homepage wenn mich nicht alles irrt :) und ich gehe nicht davon aus das Grafana in Fhem intigriert wird. Wobei ein komplett überarbeitetes Fhem plus Grafana .. naja Träumen muss man ja nicht :D
CCU2 + 3 HM-CC-RT-DN
RspFHEM + Denon AV Reciver +
Funksteckdosen 433Mhz + Z-Wave Fibaro Wall Plugs
Bald Alexa Sprachsteuerung

Offline d.schoen

  • Jr. Member
  • **
  • Beiträge: 90
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #15 am: 09 Mai 2017, 15:50:34 »
Öhm...  Man kann aus Grafana heraus Embeds und/oder Share-Links generieren. Ebenso kann ein PNG-Render exportiert werden (siehe anbei). Träum also ruhig weiter ;-)

FHEM 5.7 auf RasPi2
COC 868MHz, Jeelink Clone
Devices: IT, HomeMatic, LaCrosse, ENIGMA2, LG-TV, Thinkingcleaner (iRobot Roomba), LIFX Wifi-Bulbs
Helper: TelegramBot, Homebridge (Siri), Geofency

Offline wuast94

  • Full Member
  • ***
  • Beiträge: 113
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #16 am: 09 Mai 2017, 16:49:48 »
Öhm...  Man kann aus Grafana heraus Embeds und/oder Share-Links generieren. Ebenso kann ein PNG-Render exportiert werden (siehe anbei). Träum also ruhig weiter ;-)
ok dann habe ich was das angeht nie was gesagt  ;D ich bleibe aber dennoch dabei das das parallele fahren von beiden Sinnvolelr wäre :) am besten so das die dblog db gespiegelt wird in die andere datenbank .. so kann man mit dblog alles configurieren welche daten man will etc und mit dem gespiegelten influxdb grafana füttern. oder sieht das jemand anderes ?
« Letzte Änderung: 09 Mai 2017, 16:53:54 von wuast94 »
CCU2 + 3 HM-CC-RT-DN
RspFHEM + Denon AV Reciver +
Funksteckdosen 433Mhz + Z-Wave Fibaro Wall Plugs
Bald Alexa Sprachsteuerung

Offline Benni

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1655
  • FHEMinist
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #17 am: 09 Mai 2017, 18:10:27 »
ok dann habe ich was das angeht nie was gesagt  ;D ich bleibe aber dennoch dabei das das parallele fahren von beiden Sinnvolelr wäre :) am besten so das die dblog db gespiegelt wird in die andere datenbank .. so kann man mit dblog alles configurieren welche daten man will etc und mit dem gespiegelten influxdb grafana füttern. oder sieht das jemand anderes ?

Es hindert einen übrigens niemand daran, mehrere dblog-devices zu haben. ;)
FHEM (FL 9.9) (configDB+DbLog) auf Debian Wheezy.
Jede Menge HM mit 2x HMUART (WeMos+esp-link) über VCCU.
UniRoll an CUL868. Sebury F2-2 RFID über ESPEasy
Module: 98_rssFeed und 98_QRCode

Offline Thyraz

  • Sr. Member
  • ****
  • Beiträge: 510
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #18 am: 09 Mai 2017, 21:14:08 »
@wuast, ich verstehe nur immer noch nicht, warum 2 Datenbanken optimal sind.
Wenn InfluxDB als Datenbank für DBLog genutzt werden könnte, kann ich damit doch sowohl FHEM-Module welche auf DBLog zugreifen fütern, als auch Grafana.

Die doppelte Datenhaltung wäre dann ja nicht mehr nötig.

Ich glaube wir reden da aneinander vorbei, da du auf meinen letzten Post dann was von Grafana geschrieben hast.
Was ich meinte: Wenn InfluxDB eine der möglichen DBs wäre, die man mit DBLog nutzen kann,
dann kann ich auch FHEM interne Plots daraus erstellen lassen. Nicht nur Grafana Charts.

Wenn man aber auf doppelte Datenhaltung steht, wird aber natürlich auch dann dieser Vorliebe nichts im Weg stehen. :P

Offline wuast94

  • Full Member
  • ***
  • Beiträge: 113
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #19 am: 10 Mai 2017, 14:50:26 »
@wuast, ich verstehe nur immer noch nicht, warum 2 Datenbanken optimal sind.
Wenn InfluxDB als Datenbank für DBLog genutzt werden könnte, kann ich damit doch sowohl FHEM-Module welche auf DBLog zugreifen fütern, als auch Grafana.

So gesehen ja hast du recht. Mir ging es eher darum das es externe Anwendungen gibt die nicht mit allen Datenbanken um können .. ich weiß zb von einigen charting progs/services die nur mit bestimmten Datenbanken arbeiten. und ich weiß nicht wie viele mit sowas arbeiten .. von daher wäre eine Möglichkeit beides parallel laufen zu lassen für einige evt interessant.
CCU2 + 3 HM-CC-RT-DN
RspFHEM + Denon AV Reciver +
Funksteckdosen 433Mhz + Z-Wave Fibaro Wall Plugs
Bald Alexa Sprachsteuerung

Offline d.schoen

  • Jr. Member
  • **
  • Beiträge: 90
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #20 am: 10 Mai 2017, 14:53:12 »
Was ich meinte: Wenn InfluxDB eine der möglichen DBs wäre, die man mit DBLog nutzen kann,
dann kann ich auch FHEM interne Plots daraus erstellen lassen. Nicht nur Grafana Charts.

Richtig! Was man aber beachten sollte: InfluxDB kann - im Gegensatz zu bspw. MySQL - nur numerische Werte speichern. Textuelle Statusinformationen gehen damit nicht.
FHEM 5.7 auf RasPi2
COC 868MHz, Jeelink Clone
Devices: IT, HomeMatic, LaCrosse, ENIGMA2, LG-TV, Thinkingcleaner (iRobot Roomba), LIFX Wifi-Bulbs
Helper: TelegramBot, Homebridge (Siri), Geofency

Offline wuast94

  • Full Member
  • ***
  • Beiträge: 113
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #21 am: 10 Mai 2017, 16:27:01 »
Richtig! Was man aber beachten sollte: InfluxDB kann - im Gegensatz zu bspw. MySQL - nur numerische Werte speichern. Textuelle Statusinformationen gehen damit nicht.

Noch ein grund mehr es Parallel zu fahren (ist ja auch nur optional für die die es brauchen und ich schätze nur wenig mehr aufwand zum coden) soll ja nicht standard mäßig aktiviert sein :D
CCU2 + 3 HM-CC-RT-DN
RspFHEM + Denon AV Reciver +
Funksteckdosen 433Mhz + Z-Wave Fibaro Wall Plugs
Bald Alexa Sprachsteuerung

Offline d.schoen

  • Jr. Member
  • **
  • Beiträge: 90
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #22 am: 10 Mai 2017, 16:28:08 »
Ich vermute ja tatsächlich, dass hier massiv aneinander vorbei diskutiert wird.

Was spricht dagegen bspw. zwei DBLog Devices zu definieren? Eines für die InfluxDB und eines für die MySQL?!
FHEM 5.7 auf RasPi2
COC 868MHz, Jeelink Clone
Devices: IT, HomeMatic, LaCrosse, ENIGMA2, LG-TV, Thinkingcleaner (iRobot Roomba), LIFX Wifi-Bulbs
Helper: TelegramBot, Homebridge (Siri), Geofency
Gefällt mir Gefällt mir x 1 Liste anzeigen

Offline Benni

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1655
  • FHEMinist
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #23 am: 10 Mai 2017, 18:01:33 »
Was spricht dagegen bspw. zwei DBLog Devices zu definieren? Eines für die InfluxDB und eines für die MySQL?!

Was ich damit andeuten wollte:

Es hindert einen übrigens niemand daran, mehrere dblog-devices zu haben. ;)
FHEM (FL 9.9) (configDB+DbLog) auf Debian Wheezy.
Jede Menge HM mit 2x HMUART (WeMos+esp-link) über VCCU.
UniRoll an CUL868. Sebury F2-2 RFID über ESPEasy
Module: 98_rssFeed und 98_QRCode
Gefällt mir Gefällt mir x 1 Liste anzeigen

Offline Thyraz

  • Sr. Member
  • ****
  • Beiträge: 510
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #24 am: 11 Mai 2017, 07:34:10 »
Noch ein grund mehr es Parallel zu fahren (ist ja auch nur optional für die die es brauchen und ich schätze nur wenig mehr aufwand zum coden) soll ja nicht standard mäßig aktiviert sein :D

Ok, das ist tatsächlich ein sehr guter Grund. :)

Da sollte ich mir dann auch mal meine RegEx für das Loggen in die InfluxDB anschauen, oder werden die anderen Werte einfach ignoriert?

Offline d.schoen

  • Jr. Member
  • **
  • Beiträge: 90
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #25 am: 11 Mai 2017, 07:59:57 »
Die anderen Werte werden einfach ignoriert ;-)
FHEM 5.7 auf RasPi2
COC 868MHz, Jeelink Clone
Devices: IT, HomeMatic, LaCrosse, ENIGMA2, LG-TV, Thinkingcleaner (iRobot Roomba), LIFX Wifi-Bulbs
Helper: TelegramBot, Homebridge (Siri), Geofency
Informativ Informativ x 1 Liste anzeigen

Offline gerhardg

  • Jr. Member
  • **
  • Beiträge: 66
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #26 am: 21 Mai 2017, 14:17:32 »
Für Grafana Dashboards wären aber auch entsprechende Statusinfos von Fensterkontakten usw nicht uninteressant. Werden eigene userReadings ggf übernommen, dann müsste man ja nur open/closed einfach in 0/1 umwandeln?

Offline fischit

  • Jr. Member
  • **
  • Beiträge: 65
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #27 am: 21 Mai 2017, 14:59:37 »
Hallo Zusammen,

erst einmal danke für das Modul.
Ich habe mich deswegen mit Influx und natürlich mit Grafana auseinander gesetzt und bin glücklich über die doch ansprechenderen Dashboards als Standard FHEM Plots :)

Ich bin zwar absolut kein Spezi, aber man kann in InfluxDB auch Strings speichern. Das Modul läuft aber in ein Error (DB, User und PW durch *** ersetzt)
2017.05.21 14:31:44 4: influxlog: Writing contact,site_name=fenster_wohnzimmer_r value=closed (to VCCU)
2017.05.21 14:31:44 4: influxlog: URI: http://192.168.2.12:8086/write?db=***&u=***&p=***
2017.05.21 14:31:44 4: influxlog: Error 400 Bad Request

Wenn man Strings in die DB schieben will muss der Code contact,site_name=fenster_wohnzimmer_r value="closed (to VCCU)" lauten.

Diesen Wert kann man sich in Grafana dann mittels Single Stat anzeigen lassen.

Viele Grüße
Nils

Offline matzewob

  • Jr. Member
  • **
  • Beiträge: 56
    • TREX-TEC
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #28 am: 26 Mai 2017, 17:42:34 »
Sehr schönes Modul.
Läuft auf anhieb mit der Grafana/Influxinstanz.

Wäre nur noch cool wenn man bereits vorhandene Daten einlesen könnte.

Gruß aus Wolfsburg

Matthias

Offline DWegmann

  • Newbie
  • Beiträge: 1
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #29 am: 27 Mai 2017, 09:26:24 »
Vielen Dank für das Modul. War genau was ich gesucht habe.

Offline reinni123

  • New Member
  • *
  • Beiträge: 9
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #30 am: 30 Mai 2017, 13:04:23 »
Besteht nicht die Möglichkeit Grafana direkt mit mysql zu nutzen ohne die InfluxDB? -> http://docs.grafana.org/features/datasources/mysql/

Offline pole23

  • Full Member
  • ***
  • Beiträge: 109
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #31 am: 25 Juni 2017, 17:35:18 »
Ja, in der aktuellen Version von grafana kann man direkt auf eine MySQL Datenbank gehen. Ist wohl aber noch im Status Alpha.
Ich habe es heute mal getestet und es funktioniert generell. Siehe Bild

Offline reinni123

  • New Member
  • *
  • Beiträge: 9
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #32 am: 25 Juni 2017, 17:39:10 »
Was hast du eingestellt, das es bei dir funktioniert? Bei mir wollte es mit MariaDB nicht funktionieren.

Offline pole23

  • Full Member
  • ***
  • Beiträge: 109
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #33 am: 25 Juni 2017, 17:50:18 »
Es ist ein normaler Graph, wo ich bei "Metrics" folgenden SQL Befehl ausführen lasse:
SELECT UNIX_TIMESTAMP(TIMESTAMP) as time_sec, VALUE as value, device as metric FROM fhem.history where READING="temp_knx"Das Reading ist ein Userreading für die Temperaturen von KNX.
Das Format des Graphen ist "Time Series".

Offline reinni123

  • New Member
  • *
  • Beiträge: 9
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #34 am: 26 Juni 2017, 11:23:15 »
Tatsächlich funktioniert. Allerdings musste ich weiter filtern da bei mir unter dem reading "temperature" zu viele Sensoren erscheinen:

SELECT UNIX_TIMESTAMP(TIMESTAMP) as time_sec, VALUE as value, device as metric FROM fhem.history where READING="temperature" AND DEVICE="UG.Heizraum.Speicher.1.Tempsensor.1"
Man merkst allerdings das es deutlich länger zum laden braucht.
« Letzte Änderung: 26 Juni 2017, 11:25:36 von reinni123 »

Offline plin

  • Developer
  • Full Member
  • ****
  • Beiträge: 161
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #35 am: 26 Juni 2017, 18:22:22 »
Hi,

das Modul lief mit
define influxlog InfluxDBLog myserver 8086 fhem fhem fhem .*auf Anhieb.

Ich wollte jetzt testweise den Status der Tür/Fensterkontakte mittels Grafana-Plugin Discrete darstellen (das kann Werte in andere übersetzen, also "open (to vccua)"->"1"). Das Reading "contact" gibt's aber nicht in der InfluxDB. Werden nur numerische Werte übertragen?

VG plin

Offline deveth0

  • New Member
  • *
  • Beiträge: 10
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #36 am: 17 Juli 2017, 09:13:39 »
...
Man merkst allerdings das es deutlich länger zum laden braucht.

Hier ist das Problem, dass du alle Werte lädst und kein GROUP BY machst. Damit sollte es weitaus schneller gehen:
SELECT UNIX_TIMESTAMP(TIMESTAMP) as time_sec, VALUE as value, device as metric
FROM fhem.history
WHERE READING="temperature" AND DEVICE="UG.Heizraum.Speicher.1.Tempsensor.1" AND $__timeFilter(TIMESTAMP)
GROUP BY value, UNIX_TIMESTAMP(TIMESTAMP) DIV 300
ORDER BY time_sec asc;

Du solltest auch im Netzwerk-Monitor vom Browser sehen, dass ansonsten extrem viele Daten übertragen werden (ein einzelner meiner LaCrosse Sensor hat zB ~5MB pro Tag)
« Letzte Änderung: 19 Juli 2017, 15:50:05 von deveth0 »
Informativ Informativ x 1 Liste anzeigen

Offline hermann1514

  • Full Member
  • ***
  • Beiträge: 182
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #37 am: 31 Juli 2017, 16:01:02 »
Hi.

Habe das Modul auch mal installiert und läuft schon einige Wochen.
SIeht gut aus. Jedoch habe ich zumindest ein Gerät / oder Typ bei dem die Daten nich in die INFLUXDB geschrieben werden:
Die EDIPLUG Steckdosen. Z.B. das Reading "current" wird nich tübernommen. Jedoch von meinen EC3000 Powermeter wird das Reading in die INFLUX DB geschrieben.
Die EDIPLUG Dinger haben auch noch power_day, power_month usw. aber diese werden auch nicht geschrieben.
Ich habe die DEF mit .* abgeschlossen - hatte vorher nur bestimmte Einträge drinne - aber es wird von diesen Geräte nichts geschrieben.

Kann ich im LOG (welches??) irgendetwas sehen?

Danke.
Gruß
Hermann

Offline hermann1514

  • Full Member
  • ***
  • Beiträge: 182
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #38 am: 01 August 2017, 09:30:29 »
Hi,

habe das Problem nun gefunden. Im Reading stand noch die Einheit "W". Ich habe nun ein Userreading nur mit dem Wert erstellt und dieses wurde sofort in die DB geschrieben.

Gruß
Hermann

Offline PichlAlex

  • New Member
  • *
  • Beiträge: 33
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #39 am: 06 Oktober 2017, 10:59:16 »
Hallo!

ich bin gerade ganz begeistert über diesen Thread.
Wie ist denn der aktuelle Implementierungsstatus? gibt es bereits (oder in näherer Zukunft) eine Integration ins DBLOG oder wie wollt ihr weiter mit dem Thema umgehen?
Ich werde ebenfalls die InfluxDB zu meiner FHEM Installation implementieren - möchte aber eine doppelte Implementierung vermeiden.

schöne Grüße
Alex

Offline d.schoen

  • Jr. Member
  • **
  • Beiträge: 90
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #40 am: 06 Oktober 2017, 11:08:23 »
Hi Alex,

eine Integration in DBLog ist aktuell nicht vorgesehen. Das Modul von mir läuft aber seit Mai zu 100% stabil und darf gern verwendet werden.

Viele Grüße
Dominik
FHEM 5.7 auf RasPi2
COC 868MHz, Jeelink Clone
Devices: IT, HomeMatic, LaCrosse, ENIGMA2, LG-TV, Thinkingcleaner (iRobot Roomba), LIFX Wifi-Bulbs
Helper: TelegramBot, Homebridge (Siri), Geofency

Offline Thyraz

  • Sr. Member
  • ****
  • Beiträge: 510
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #41 am: 06 Oktober 2017, 13:28:18 »
Ich habe gestern erst meine Sqlite3 DBLog Datenbank in eine MySQL Datenbank umgezogen und nutze diese nun direkt in Grafana.
Die MySQL-Datasource von Grafana scheint mittlerweile echt gut zu funktionieren.

Damit bleibt die einem die doppelte Datenhaltung erspart.
Auch sind String-Werte wie open/closed kein Problem und man erspart sich zusätzliche numerische Userreadings um das in InfluxDB loggen zu können.

Die Werte kann man dann direkt im SELECT Statement wieder zu Werten mappen um sie in Grafana in den Graphen zu bekommen.
Durch die vielfältigen Funktionen die bei einem SELECT möglich sind, brauchen viele Sachen auch gar nicht in Grafana integriert werden, da man das schon auf MySQL Seite erledigen kann.

z.B. Temperaturdaten ausdünnen und durch Mittelwerte ersetzen, damit der Graph schneller lädt / weniger Traffic erzeugt usw.
Oder Offsets auf Werte aufrechnen um mehrere Kurven übereinander in einem Graphen darzustellen.


Offline artcrime

  • Newbie
  • Beiträge: 2
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #42 am: 14 November 2017, 19:11:09 »
Hallo,

bin ein totaler Fan von Influxdb / Grafana und freue mich das fhem direkt die Messwerte dort ablegen kann. Echt tolle Arbeit! Ist es auch möglich den Alias eines Messwerte als weiteren Tag in die Influxdb zu schreiben?
Ich möchte für die Grafana Dashboards Template Variablen nutzen was zwar funktioniert aber die Namen meiner Temperatursensoren entsprechen nicht den Raumnamen. Weitere Tags an den Messwerten würden die Templateerstellung deutlich vereinfachen. Am besten fände ich es wenn der Alias des Gerätes als Tag mit geschrieben wird (oder wenn es optional wäre).

Gruß Sascha

Offline plin

  • Developer
  • Full Member
  • ****
  • Beiträge: 161
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #43 am: 14 November 2017, 20:56:27 »
Und wie schaut es mit Tür-/Fensterkontakten aus? Die haben den Status open / closed der als 0 / 1 in die InfluxDB übertragen werden könnte.

Offline artcrime

  • Newbie
  • Beiträge: 2
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #44 am: 15 November 2017, 16:15:29 »
Da influxdb ein gute Web Schnittstelle zum Einfügen der Daten hat habe ich schon mal darüber nachgedacht bei jedem Schreibevent (wegen mir in den Txt / mysql Log) einen Benutzerdefinierten Curl Aufruf zu starten welcher die Daten in gewünschter Form in die Influxdb schreibt. Damit könnte man auch mehrere Values oder auch Strings in die Datenbank schreiben.

Die http Schnittstellen ist sehr gut dokumentiert. Schreiben in die Datenbank könnte z.B. so aussehen (Auszug aus der influxdb Doku):

curl -i -XPOST 'http://localhost:8086/write?db=mydb' --data-binary 'cpu_load_short,host=server01,region=us-west value=0.64 1434055562000000000'

Wäre meiner Meinung nach der flexibelste Weg!

Ich weiß nicht ob ich sowas mit fhem überhaupt machen könnte (nutze fhem erst seit ein paar Tagen und lese mich wenn ich Zeit habe in ein paar Themen ein).

Gruß

Offline antst

  • Newbie
  • Beiträge: 1
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #45 am: 28 November 2017, 18:31:27 »
Thanks for excellent work!

I configured logging to InfluxDB, converted my text logs to it, and embedded back to FHEM plots from Grafana (dynamically with all goodness of Grafana) and it works like a charm now!

Offline volschin

  • Hero Member
  • *****
  • Beiträge: 1091
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #46 am: 10 Dezember 2017, 14:31:27 »
Ich bin gerade auf den Thread gestoßen, da ich auf eine Time Series Datenbank umstellen wollte. Ich las im Netz, dass InfluxDB die bis zu 75-fache Performance einer MariaDB bringt.
Ich finde es immer wieder cool, dass schon einer das Thema vorgedacht hat. Ich war noch unschlüssig, ob InfluxDB oder Prometheus, aber mit dem vorhandenen Modul fällt erstmal die Entscheidung bei mir, InfluxDB auszuprobieren.  :)

Vielen Dank an d.schoen für das Modul.
RPi2 FHEM5.8,HM-MOD-RPI-PCB+HM-USB-CFG2+hmland 0.101
HM: CC-TC,CC-VD,LC-Dim1T-Pl-2,LC-SW1-PL2,LC-Sw1PBU-FM,LC-Dim1PWM-CV,PB-4DIS-WM,RC-19-SW
SEC-RHS,SEC-SC,SEC-SD,SEC-WIN,SEC-MDIR,Sen-MDIR-WM55,SEC-Sco
HUE: diverse, Amzn Dash-Buttons
4xRPi,4xCO20,OWL+USB,HarmonyHub,FB7590 v6.90,Echo Dot,Logi Circle2

Offline pano

  • New Member
  • *
  • Beiträge: 17
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #47 am: 12 Dezember 2017, 10:06:01 »
Hallo allerseits,

ich habe das Modul nun schon seit einigen Monaten in Betrieb und versuche grade das Logging etwas einzuschränken.
Allerdings wird bei mir garnichts mehr geloggt, sobald ich im regex der def irgend etwas anderes als .* stehen habe.

Bsp:
localhost 8086 meidedb meinuser meinpwd (.*:temperature)

Übersehe ich was, oder kann jemand das auch nachvollziehen?

Danke, Pano

Offline fischit

  • Jr. Member
  • **
  • Beiträge: 65
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #48 am: 12 Dezember 2017, 17:46:02 »
Meine Definition läuft mit
<host> <port> <DB> <username> <passwort> .*:(temperature|humidity|lueftung|absFeuchte).*

Offline fervor

  • Newbie
  • Beiträge: 2
Antw:Neues Modul: 93_InfluxDBLog - FileLog Import -> influxdb
« Antwort #49 am: 17 Dezember 2017, 20:45:11 »
Hi,

ich bin gerade dabei meine alten FileLogs in die influxdb zu übertragen. Dazu benutze ich ein kleines shell script.
Vielleicht hat ja noch jemand Bedarf.

Es werden alle im gleichen Verzeichnis gefundenen Logs berücksichtigt. Nach dem Import werden die fertigen Logs nach ./ok verschoben. Vielleicht vor dem finalen Start nochmal mit echo vor der curl Anweisung testen.

#!/bin/bash

host=localhost:8086
influxdb_name=fhem_db


################################################################################


mkdir -p ./ok

for file in $(find . -name "*.log" | sort)
do

  while read line
  do

        year=$(echo $line | cut -d - -f 1)
        month=$(echo $line | cut -d - -f 2)
        day=$(echo $line | cut -d - -f 3 | cut -d _ -f 1)
        hour=$(echo $line | cut -d _ -f 2 | cut -d : -f 1)
        minute=$(echo $line | cut -d : -f 2)
        second=$(echo $line | cut -d : -f 3 | cut -d ' ' -f 1)
        sensor=$(echo $line | cut -d ' ' -f 2)
        reading=$(echo $line | cut -d ' ' -f 3 | cut -d : -f 1)
        value=$(echo $line | cut -d ' ' -f 4)

        time=$(echo $(date -d $year'-'$month'-'$day' '$hour':'$minute':'$second +%s)000000000)

        #Test auf nummerische Werte
        if [ "$(echo $value | grep -o '[0-9.]*')" != "" ]; then
#               echo $year-$month-$day'_'$hour:$minute:$second - $time - $sensor $reading $value
                curl -i -XPOST 'http://'$host'/write?db='$influxdb_name'' --data-binary $reading',site_name='$sensor' value='$value' '$time''
        fi


  done < $file

    mv $file ./ok/$file

done

Offline pano

  • New Member
  • *
  • Beiträge: 17
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #50 am: 18 Dezember 2017, 00:00:41 »
@d.schoen: erst mal vielen Dank für das Modul. Habe mittlerweile so ziemlich alles an Logvisualisierung in Grafana verlegt, was ohne dein InfluxDB Modul nicht geklappt hätte. Danke dafür.
Davon mal abgesehen, entwickelst Du das Modul noch weiter?

Zum einen denke ich, dass man mit den Tags in der Influx noch eine Menge machen könnte (im Sinne von eigene Tags vergeben).

Zum anderen bietet Grafana seit einiger zeit auch sog. Annotations, die man hervorragend nutzen könnte um "binäre" Ereignisse (zB Fenster auf/zu) in den Graphen/Dashboards darzustellen. Die dazugehörige Logik könnte ja auch perspektivisch ins InfluxDB Modul wandern.

Und zu guter Letzt bietet das Modul bisher ja die Möglichkeit per Regex die zu protokollierenden Events einzuschränken. Bei hinreichend vielen verschiedenen zu loggenden Devices und Events wird die DEF aber zunehmend unübersichtlich. Vieleicht wäre ein umgekehrter Ansatz hinfreich iSv an einem Device selbst hinterlegen, ob und welche Events es in InfluxDB loggen soll.

Was denkst Du darüber?
Grüße, Pano

Offline doridian

  • New Member
  • *
  • Beiträge: 7
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #51 am: 18 Dezember 2017, 16:26:45 »
Ich habe mal ein bisschen an dem Modul rumgebaut
Es speichert jetzt auch den device type/module mit als tag.
Ausserdem kann es metrics remappen (und in meiner Version loggt es nur Attribute, wofuer es mappings hat). Weil viele Module loggen z.B. temperatur als "measured-temp" oder "temperature", manche sogar als "other"
Ebenfalls eingebaut habe ich ein globales attribute influxIgnore, womit man devices ignorieren kann, selbst wenn der regex matcht (Diese ganzen HomeMatic subdevices wuerden sonst doppelte Log-Werte eintragen, die nicht wirklich nuetzlich sind)

https://github.com/Doridian/fhem-InfluxDBLog/blob/master/FHEM/93_InfluxDBLog.pm

Vielleicht koennte man auch noch device-specifische remaps einbauen, um die Attribute einzuschraenken.

Offline rafael.l

  • Newbie
  • Beiträge: 1
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #52 am: 28 Dezember 2017, 21:17:09 »
Hallo Leute!

Vielen Dank für die sinnvolle Erweiterung für FHEM. Allerdings habe ich Schwierigkeiten Werte von FHEM an die influxDB zu schicken. Bei der Einrichtung habe ich mich an diese beiden howtos gehalten (https://www.frombeyond.de/2017/influxdb-grafana-setup/, https://www.frombeyond.de/2017/fhem-6-grafana-und-influxdb/).

Mittlerweile habe ich herausgefunden, dass es an der Formatierung der Log-Datei liegt. Wie muss die Log-Datei aussehen, damit das Modul tut, was es soll?

Diese Formatierung führt zu einem http-400-error:

2017-12-28_21:11:37 WZ_spannung 3023
Vielen Dank für Eure Hilfe!

Offline pano

  • New Member
  • *
  • Beiträge: 17
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #53 am: 28 Dezember 2017, 22:49:50 »
Was genau probierst Du denn? Und was hat die Log Datei damit zu tun? Das Modul schreibt - je nachdem was du in der def stehen hast - alle numerischen Readings die ein Event erzeugen in die InfluxDB.

Offline toolking

  • Newbie
  • Beiträge: 1
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #54 am: 30 Dezember 2017, 00:16:34 »
@d.schoen, danke fürs Modul, wir benutzen influx/grafana in der Firma und ich hab mich gleich wohl gefühlt.
@doridian, danke für die Erweiterung.

Ich habe aber einen kleinen Bug gefunden. Wo kann ich den PR hinschicken? ;)

Negative Werte werden bei mir nicht richtig geschrieben.
in der Funktion: InfluxDBLog_Write
...
my $value = $arr[1];
return if($value =~ m/[^.\d]/);
...
wird hier ein negativer $value rausgeschmissen. Habs bei den negativen Außentemperaturen momentan, zum ersten mal festgestellt.

Mein Fix war, einfach den regex zu erweitern:
m/[^.\d-]/
12xLaCrosse via JeeLink+ser2net, 18xMAX! via  MAXCUN, SML(OBIS) via ser2net, 4xPCA301 via JeeLink+ser2net, Div. HM via HM-LAN-GW

Offline shaddi

  • New Member
  • *
  • Beiträge: 16
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #55 am: 12 Januar 2018, 16:17:47 »
Damit bleibt die einem die doppelte Datenhaltung erspart.
Auch sind String-Werte wie open/closed kein Problem und man erspart sich zusätzliche numerische Userreadings um das in InfluxDB loggen zu können.

Die Werte kann man dann direkt im SELECT Statement wieder zu Werten mappen um sie in Grafana in den Graphen zu bekommen.
Durch die vielfältigen Funktionen die bei einem SELECT möglich sind, brauchen viele Sachen auch gar nicht in Grafana integriert werden, da man das schon auf MySQL Seite erledigen kann.

z.B. Temperaturdaten ausdünnen und durch Mittelwerte ersetzen, damit der Graph schneller lädt / weniger Traffic erzeugt usw.
Oder Offsets auf Werte aufrechnen um mehrere Kurven übereinander in einem Graphen darzustellen.

Kannst du vielleicht ein-zwei Beispiele rein werfen, bitte? Ich stellte mich gerade echt zu blöd an, sinnvolle SQL-Statements zu definieren, die dann im Grafana irgendwas anzeigen..

Offline fischit

  • Jr. Member
  • **
  • Beiträge: 65
Antw:Neues Modul: 93_InfluxDBLog
« Antwort #56 am: 12 Januar 2018, 16:26:16 »
Kannst du vielleicht ein-zwei Beispiele rein werfen, bitte? Ich stellte mich gerade echt zu blöd an, sinnvolle SQL-Statements zu definieren, die dann im Grafana irgendwas anzeigen..
Beispiele findest du hier einiges: https://forum.fhem.de/index.php/topic,77724.0.html