Grafana Auswertung von Daten aus IOBroker

  • Ab sofort steht euch hier im Forum die neue Add-on Verwaltung zur Verfügung – eine zentrale Plattform für alles rund um Erweiterungen und Add-ons für den DSM.

    Damit haben wir einen Ort, an dem Lösungen von Nutzern mit der Community geteilt werden können. Über die Team Funktion können Projekte auch gemeinsam gepflegt werden.

    Was die Add-on Verwaltung kann und wie es funktioniert findet Ihr hier

    Hier geht es zu den Add-ons

hammond

Benutzer
Registriert
21. Apr. 2013
Beiträge
1
Reaktionspunkte
0
Punkte
1
Hallo,
ich speichere Daten von IOBroker in einer MariaDB. Diese möchte ich mit Grafana (Version: Grafana v11.2.0 (2a88694fd3)) auswerten. Dabei habe ich folgendes Problem:
Die Daten sind in der Tabelle ts_number in der Spalte val gespeichert. Der dazu von IOBroker gesendete Timestamp sitzt in der Spalte ts und ist 13-stellig (ms)!

ts_Number.png

Bei einer Grafana Abfrage (Format: "Time Series") erhalte ich die Meldung: Status: 500. Message: db has no time column: no time column found

1728029409309.png

Mache ich die gleiche Abfrage im Format: Tabelle, erhalte ich das Ergebnis:

1728029650737.png
Anmerkung: In der Tabelle habe ich die Spalte ts transformiert:
1728029946306.png

Bei einer Eingrenzung des Datumsbereiches
z.B.: Befehl: SELECT val FROM Strom.ts_number where ((ts between $__timeFrom() AND $__timeTo()) AND (id=1))
bekomme ich keine Fehlermeldung, aber auch keine Daten.

Ich bin Grafana Beginner, was mache ich falsch? Kann das Timestamp Format mit 13 Stellen Probleme machen? Wie kann ich einen Graphen darstellen?

Danke im Voraus für eure Tipps.
 
Zuletzt bearbeitet:
Kleiner Tipp: Mach es mit InfluxDB. Auf YouTube findest du dann auch passende Muster-Konfigurationen zum Nachbauen.
 
  • Like
Reaktionen: Bx99
Gleicher Gedanke. InfluxDB ist für Dein Vorhaben besser geeignet.
 
Zuletzt bearbeitet von einem Moderator:
Hallo,
Influx oder mariadb ist erstmal egal (influx ist bei Zeitreihen wesentlich schneller), Dein Zeitstempel wird nicht erkannt und kann auch nicht transformiert werden. Der Timestamp muss in Sekunden vorliegen. Definiere eine neue Spalte und Speicher dort in Sekunde (10stellig).

Gruß Götz
 
Den Unix-Timestamp sollte man konvertieren können. Notfalls ginge das auch über einen separaten View, den man in MySQL/MariaDB speichert.
Aber wie gehabt: ich würde hier generell mit InfluxDB arbeiten
 

Additional post fields

 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat