Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Off Topic
  4. Grafana
  5. Visualisierung eines Status in Grafana über InfluxDB

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.6k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.1k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    2.8k

Visualisierung eines Status in Grafana über InfluxDB

Geplant Angeheftet Gesperrt Verschoben Grafana
5 Beiträge 2 Kommentatoren 474 Aufrufe 3 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • M Offline
    M Offline
    Markus 7
    schrieb am zuletzt editiert von Markus 7
    #1

    Hallo zusammen,

    ich würde gerne die Status meiner USV "Verbunden" (true/false) oder was sie gerade macht (laden, entladen etc.) in Grafana als Textausgabe visualisieren. Dazu greife ich die entsprechenden Werte in ioBroker ab und leite sie an InfluxDB weiter.

    527e9214-a84a-46d4-b920-763335eb4fe4-image.png

    28379c75-2840-4fda-8cb6-075d3e03957d-image.png

    In InfluxDB bekomme ich dann die folgende, korrekte Syntax:

    from(bucket: "iobroker_0")
      |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
      |> filter(fn: (r) => r["_measurement"] == "usv_status")
      |> filter(fn: (r) => r["_field"] == "value")
      |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)
      |> yield(name: "mean")
    

    Übertrage ich das dann in Grafana bekomme ich den Wert (hier: "OL") jedoch nicht angezeigt - egal welches Panal ich aufrufe.

    b3e36e87-911a-4aa0-8069-f6b3ad43954b-image.png

    Was mache ich falsch?

    Viele Grüße,
    Markus

    1 Antwort Letzte Antwort
    0
    • M Offline
      M Offline
      Markus 7
      schrieb am zuletzt editiert von Markus 7
      #2

      Schön, wenn man sich selber eine Lösung präsentieren kann :innocent:

      Ich muss in Grafana nur das Feld auf "Value" anstelle "Numeric" umstellen - dann geht es :-)

      6a709901-e42a-497b-b457-9b47cd5d69fb-image.png

      M 1 Antwort Letzte Antwort
      0
      • M Markus 7

        Schön, wenn man sich selber eine Lösung präsentieren kann :innocent:

        Ich muss in Grafana nur das Feld auf "Value" anstelle "Numeric" umstellen - dann geht es :-)

        6a709901-e42a-497b-b457-9b47cd5d69fb-image.png

        M Offline
        M Offline
        Markus 7
        schrieb am zuletzt editiert von
        #3

        So, jetzt habe ich doch noch eine Frage dazu: Wenn sich über den Zeitraum der Anzeigeeinstellung in Grafana (...last 6 hours...) der Wert nicht ändert bekomme ich ein "No data" angezeigt. Was muss ich einstellen, damit mit der letzte bekannte Wert (/Status) angezeigt wird?

        d991e41d-6733-4d59-abb5-ed876d0ea557-image.png

        from(bucket: "iobroker_0")
          |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
          |> filter(fn: (r) => r["_measurement"] == "usv_connection")
          |> filter(fn: (r) => r["_field"] == "value")
          |> aggregateWindow(every: v.windowPeriod, fn: last, createEmpty: false)
          |> yield(name: "last")
        

        Viele Grüße,
        Markus

        Marc BergM 1 Antwort Letzte Antwort
        0
        • M Markus 7

          So, jetzt habe ich doch noch eine Frage dazu: Wenn sich über den Zeitraum der Anzeigeeinstellung in Grafana (...last 6 hours...) der Wert nicht ändert bekomme ich ein "No data" angezeigt. Was muss ich einstellen, damit mit der letzte bekannte Wert (/Status) angezeigt wird?

          d991e41d-6733-4d59-abb5-ed876d0ea557-image.png

          from(bucket: "iobroker_0")
            |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
            |> filter(fn: (r) => r["_measurement"] == "usv_connection")
            |> filter(fn: (r) => r["_field"] == "value")
            |> aggregateWindow(every: v.windowPeriod, fn: last, createEmpty: false)
            |> yield(name: "last")
          

          Viele Grüße,
          Markus

          Marc BergM Offline
          Marc BergM Offline
          Marc Berg
          Most Active
          schrieb am zuletzt editiert von Marc Berg
          #4

          @markus-7
          Das ist leider nicht ganz so einfach. So wie ich den Wert verstehe, könnte die letzte Änderung ja schon Tage oder Wochen zurückliegen, richtig? Grafana kann ja nur das verarbeiten, was die Influx-Query zurückliefert.

          Deshalb könntest du entweder den Timerange so stark vergrößern, dass du in jedem Fall die letzte Änderung erfasst, z.B. das letzte Jahr:

          |> range(start: -1y)
          

          Alternativ könntest Du vom InfluxDB-Adapter regelmäßig (auch identische) Werte schreiben lassen, z.B. alle 5 Stunden:

          8df37bb7-5698-40a3-9422-582f4b9e0ba1-grafik.png

          NUC10I3+Ubuntu+Docker+ioBroker+influxDB2+Node Red+RabbitMQ+Grafana

          Pi-hole, Traefik, Checkmk, Conbee II+Zigbee2MQTT, ESPSomfy-RTS, LoRaWAN, Arduino, KiCad

          Benutzt das Voting im Beitrag, wenn er euch geholfen hat.

          M 1 Antwort Letzte Antwort
          1
          • Marc BergM Marc Berg

            @markus-7
            Das ist leider nicht ganz so einfach. So wie ich den Wert verstehe, könnte die letzte Änderung ja schon Tage oder Wochen zurückliegen, richtig? Grafana kann ja nur das verarbeiten, was die Influx-Query zurückliefert.

            Deshalb könntest du entweder den Timerange so stark vergrößern, dass du in jedem Fall die letzte Änderung erfasst, z.B. das letzte Jahr:

            |> range(start: -1y)
            

            Alternativ könntest Du vom InfluxDB-Adapter regelmäßig (auch identische) Werte schreiben lassen, z.B. alle 5 Stunden:

            8df37bb7-5698-40a3-9422-582f4b9e0ba1-grafik.png

            M Offline
            M Offline
            Markus 7
            schrieb am zuletzt editiert von
            #5

            @marc-berg

            Ja, korrekt interpretiert, die letzten Änderungen der Werte (gerade so Sachen wie Verbindungsstück) können lange zurück liegen. Ich probiere mal den Timerange hoch zu setzen.

            1 Antwort Letzte Antwort
            0
            Antworten
            • In einem neuen Thema antworten
            Anmelden zum Antworten
            • Älteste zuerst
            • Neuste zuerst
            • Meiste Stimmen


            Support us

            ioBroker
            Community Adapters
            Donate

            627

            Online

            32.4k

            Benutzer

            81.5k

            Themen

            1.3m

            Beiträge
            Community
            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
            ioBroker Community 2014-2025
            logo
            • Anmelden

            • Du hast noch kein Konto? Registrieren

            • Anmelden oder registrieren, um zu suchen
            • Erster Beitrag
              Letzter Beitrag
            0
            • Home
            • Aktuell
            • Tags
            • Ungelesen 0
            • Kategorien
            • Unreplied
            • Beliebt
            • GitHub
            • Docu
            • Hilfe