Autor Thema: Hinweis: Schöne Alternative für Charts/Plots mit Grafana und DBLog (MySQL)  (Gelesen 14933 mal)

Offline RoBra81

  • Sr. Member
  • ****
  • Beiträge: 967
Guten Morgen,

was du suchst mache ich beim SysMon, da hier mehrere Werte in einem Reading gespeichert werden - das "Zauberwort" heißt substring_index. Hier meine Auswertung als Beispiel, bei dir musst du statt der 4 vermutlich eine 2 nehmen und das "100-" kann bei dir auch weg:

SELECT
    UNIX_TIMESTAMP(TIMESTAMP) as time_sec,
    100-substring_index(substring_index(value, ' ', 4),' ',-1) as value,
    "CPU gesamt" as metric
  FROM history
  WHERE READING="stat_cpu_percent" and device="SysMon" AND $__timeFilter(TIMESTAMP)

Ronny

Offline devil77

  • Full Member
  • ***
  • Beiträge: 328
TOP!!! Das war es. Um die Werte in Grafana zu bekommen sieht es jetzt so bei mir aus
Temperatur
SELECT
  UNIX_TIMESTAMP(TIMESTAMP) as time_sec,
  CONVERT((substring_index(substring_index(value, ' ', 2),' ',-1)), double) as value,
  "Temperatur" as metric
FROM history
WHERE READING="state" AND DEVICE="BA_o_Hz_Stellantrieb_Clima" AND $__timeFilter(TIMESTAMP)
GROUP BY UNIX_TIMESTAMP(TIMESTAMP) DIV 300

und Ventilstellung
SELECT
  UNIX_TIMESTAMP(TIMESTAMP) as time_sec,
  CONVERT((substring_index(substring_index(value, ' ', 3),' ',-1)), double) as value,
  "Ventil" as metric
FROM history
WHERE READING="state" AND DEVICE="BA_o_Hz_Stellantrieb_Clima" AND $__timeFilter(TIMESTAMP)
GROUP BY UNIX_TIMESTAMP(TIMESTAMP) DIV 300

Offline Thyraz

  • Sr. Member
  • ****
  • Beiträge: 875
Wobei du theoretisch das Problem bekommen könntest, dass sich der Index von Ventilstellung ändert.
Theoretisch deshalb, weil die Temperatur in einem Innenraum wahrscheinlich nie einstellig oder negativ werden sollte. ;)

Eine Lösung falls man in so ein Problem rennen sollte, könnte eine Kombination aus REGEXP_SUBSTR (Mit deiner Regex valve:\s([-\.\d]+)) und REPLACE (um das valve: aus dem Treffer zu entfernen) sein.
Fhem und MariaDB auf NUC6i5SYH in Proxmox Container (Ubuntu)
Zwave, Lacrosse, Hue, Harmony, Solo4k, LaMetric, Snips, ...

Offline RoBra81

  • Sr. Member
  • ****
  • Beiträge: 967
Wobei du theoretisch das Problem bekommen könntest, dass sich der Index von Ventilstellung ändert.
Theoretisch deshalb, weil die Temperatur in einem Innenraum wahrscheinlich nie einstellig oder negativ werden sollte. ;)

Das verstehe ich nicht ganz? Ich dachte, substring_index trennt den Wert an definierten Trennzeichen (hier das Leerzeichen ' ') - da ist doch egal, wie viele Stellen die Temperatur hat und ob da noch ein '-' davor ist, oder?

Ronny
Gefällt mir Gefällt mir x 1 Liste anzeigen

Offline Thyraz

  • Sr. Member
  • ****
  • Beiträge: 875
Hätt ich mal nicht nur den Namen der Funktion, sondern auch die Doku dazu gelesen.  ;D

Dann stimmt es natürlich.
Fhem und MariaDB auf NUC6i5SYH in Proxmox Container (Ubuntu)
Zwave, Lacrosse, Hue, Harmony, Solo4k, LaMetric, Snips, ...