Welche MQTT to InfluxDB bridge wuerdet Ihr empfehlen bzw benutzt Ihr?

  • Bei mir laeuft momentan ein Helligkeitssensor der seine Werte per MQTT published. Geplant habe ich noch einen weiteren Sensor zu bauen der Temperatur und Luftfeuchtigkeit per MQTT published. Bis letzterer verfuegbar ist moechte ich schon mal die Infrastruktur einrichten mit der die Temperaturdaten ins Grafana rsp InfluxDB gestellt werden und dazu die exemplarisch Helligkeitswerte reinstellen.


    Welche Bridge benutzt Ihr bzw wuerdet Ihr empfehlen zu nutzen? Der MQTT Broker ist mosquitto.

    "Really, I'm not out to destroy Microsoft. That will just be a completely unintentional side effect."

    Linus Benedict Torvalds, 28.9.2003


    Hast Du die Woche schon Deine Raspberry gesichert =O Bei mir tut das raspiBackup automatisch ;)

  • Interessanter Vorschlag. Mit telegraf hatte ich die Tage schon mal rumgespielt. Beim Suchen im Netz habe ich verschiedene home grown Bridges gefunden - aber nichts zu telegraf.

    "Really, I'm not out to destroy Microsoft. That will just be a completely unintentional side effect."

    Linus Benedict Torvalds, 28.9.2003


    Hast Du die Woche schon Deine Raspberry gesichert =O Bei mir tut das raspiBackup automatisch ;)

  • Sehe gerade das telegraf sowie das Plugin in go geschrieben ist :bravo2:

    "Really, I'm not out to destroy Microsoft. That will just be a completely unintentional side effect."

    Linus Benedict Torvalds, 28.9.2003


    Hast Du die Woche schon Deine Raspberry gesichert =O Bei mir tut das raspiBackup automatisch ;)

  • Bei mir läuft ioBroker als Smarthome-Zentrale und zeitgleich als MQTT Broker + "InfluxDB Bridge". Ein Arduino sendet über MQTT die Daten an den MQTT Broker, dort kann ich im ioBroker die Daten noch aufbereiten, die Werte als Zustände speichern und sie dann für die Historie in InfluxDB speichern. Grafana zieht sich dann alles auf InfluxDB und macht schöne Graphen.


    Zuvor hatte ich die UDP-Schnittstelle von InfluxDB aktiviert, um so die Daten direkt in die Datenbank zu schreiben: https://www.influxdata.com/blo…uxdb-from-an-arduino-uno/

  • Bei mir gehts über zigbee2mqtt nach mqtt dann via nodered zur influxdb. Dort bedient sich dann grafana.

    In nodered empfange ich mqtt (gibts eine node für), bereite manche Daten auf und schreibe dann über udp (gibts eine node für) in die influxdb.

    Zigbee2mqtt deshalb weil ich viele Philips hue Bewegungsmelder einsetze. Da ist alles drin was das smarthome Herz begehrt 😀 und die Batterien halten lange.


    Liebe Grüße

    Leroy

    Optimismus ist nur ein Mangel an Informationen🤓

    Edited once, last by Leroy Cemoi: Mosquitto unterschlagen🙂 ().

  • In nodered empfange ich mqtt (gibts eine node für), bereite manche Daten auf und schreibe dann über udp (gibts eine node für) in die influxdb.

    Hm ... das klingt auch nicht schlecht. ich lese schon MQTT Sensordaten von Nodered. Die Daten dann in Nodered zu bearbeiten und per udp in die InfluxDB zu schicken ist auch keine schlechte Idee. Vor allen Dingen hat man dann die komplette Kontroller ueber den Datenfluss.


    gestern habe ich mal ein wenig mit telegraf plugin fuer influxdb und converter rumgespielt. Da muss man sich offensichtlich tiefer einarbeiten. Dummerweise habe ich es nicht hinbekommen meine Sensordaten in die DB zu bekommen. Es gab Formatfehler. vermutlich weil ich nicht nur ein Datum im MQTT Payload schicke sondern 3 mit Komma getrennte Daten :conf:

    "Really, I'm not out to destroy Microsoft. That will just be a completely unintentional side effect."

    Linus Benedict Torvalds, 28.9.2003


    Hast Du die Woche schon Deine Raspberry gesichert =O Bei mir tut das raspiBackup automatisch ;)

  • Es gab Formatfehler. vermutlich weil ich nicht nur ein Datum im MQTT Payload schicke sondern 3 mit Komma getrennte Daten

    Mein Sensor sendet die MQTT Payload als JSON, also {"systemActivePower":988.2, "systemImpActiveEnergy":123456.0}. "MQTT.fx" habe ich zum debuggen benutzt und das versucht schon automatisch was brauchbares aus den eingehenden Paketen zu lesen.

  • Mein Sensor sendet die MQTT Payload als JSON,

    Interessanter Ansatz. Dann ist auch das Parsen des MQTT Payloads in Node-Red viel einfacher :thumbup: Jetzt muss ich noch rausbekommen ob telegraf oder influxdb das auch auseinanderfrieckeln kann :shy:

    "Really, I'm not out to destroy Microsoft. That will just be a completely unintentional side effect."

    Linus Benedict Torvalds, 28.9.2003


    Hast Du die Woche schon Deine Raspberry gesichert =O Bei mir tut das raspiBackup automatisch ;)

  • Ich benutze InfluxDB line protoco

    Das habe ich soweit erfolgreich hinbekommen. Ist ja ein Klacks den C Code fuer den ESP entsprechend zu aendern. Es wird ja auch JSON als input Format unterstuetzt . Da hapert es momentan noch :denker:. Aber fuer heute ist erst mal Schluss :sleepy:

    "Really, I'm not out to destroy Microsoft. That will just be a completely unintentional side effect."

    Linus Benedict Torvalds, 28.9.2003


    Hast Du die Woche schon Deine Raspberry gesichert =O Bei mir tut das raspiBackup automatisch ;)

  • Noch einmal vielen Dank fuer Eure Vorschlaege und Ideen :thumbup:

    Letztendlich benutze ich jetzt telegraf und das mqtt consumer plugin. Es hat etwas gedauert bis ich es verstanden hatte wie ich das Plugin konfiguriern und wie das JSON aussehen muss damit die Daten in die InflixDB gelutscht werden. Das line protocol ist trivial, beim JSON protocol muss man noch das Plugin etwas konfigurieren.


    Jedenfalls holt sich telegraf jetzt fuer zwei Temperatursensoren die ihre Daten per mqtt publishen die Daten ab so dass ich sie mir mit Grafana ansehen kann.


    Jetzt muss ich nur noch meinen dritten Sensor, ein Helligkeitssensor auf JSON umstellen damit ich die Daten auch per Grafana analysieren kann. Da parallel die Werte noch vom Node-Red subscribed sind muss ich da auch noch Hand anlegen. Aber NR kann ja perfekt mit JSON umgehen :shy:

    "Really, I'm not out to destroy Microsoft. That will just be a completely unintentional side effect."

    Linus Benedict Torvalds, 28.9.2003


    Hast Du die Woche schon Deine Raspberry gesichert =O Bei mir tut das raspiBackup automatisch ;)

  • Daten in die InflixDB gelutscht werden

    😅


    Jedenfalls holt sich telegraf jetzt fuer zwei Temperatursensoren

    Musstest du das fest für diese zwei Sensoren einrichten oder lässt sich das dynamisch erweitern, sodass jeder neue Sensor automatisch von Telegraf erkannt und richtig abgespeichert wird? Beim Line Protocol muss kann man ein "tag_set" einfügen, mit dem sich die unterschiedlichen Sensoren unterscheiden lassen. Das kann z.B. location=badezimmer oder host=sensor_badezimmer sein.

    Kelvin

  • Auch beim JSON Protokoll gibt es die tag_set Definition. Dann muss jeder Sensor nur dieses Tag mitgeben um sich zu identifizieren (location=Bad, Wohnzimmer, Schlafzimmer et al). Momentan gebe ich noch kein Tag mit und habe deshalb zwei mqtt consumer definiert die auf unterschiedliche Topics lauschen und dann mit name_override auf unterschiedliche Namen ihre Daten schreiben. Das ist eine Kruecke und werde ich noch glattziehen. Dann ist nur noch ein Consumer notwendig.

    "Really, I'm not out to destroy Microsoft. That will just be a completely unintentional side effect."

    Linus Benedict Torvalds, 28.9.2003


    Hast Du die Woche schon Deine Raspberry gesichert =O Bei mir tut das raspiBackup automatisch ;)