Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Off Topic
    4. ioBroker – Grafana Tagesverlauf – keine Variablen in Query

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    ioBroker – Grafana Tagesverlauf – keine Variablen in Query

    This topic has been deleted. Only users with topic management privileges can see it.
    • F
      ftd @Peter 1 last edited by

      @peter-1 said in ioBroker – Grafana Tagesverlauf – keine Variablen in Query:

      Ich hoffe es ist etwas verständlicher und mit kann einen helfen.

      Ja. 🙂

      1. Die Filter die es gibt „finden/ einschalten“.

      Du nutzt Influx v2. Die Filter zum zusammenklicken (InfluxQL) gibt es dort nicht mehr. Die neue Syntax heisst Flux.

      1. Den „Quellcode“ händisch eintrage.

      Ja, musst du machen.

      Alternative 1: Auf Influx v1.x zurück.

      Zeig mal deine Datenpunkte in ioBroker, welche du visualisieren möchtest.... den Query bekommen wir hin. Ist kein Hexenwerk.

      Alternative 2: Den Query in der InfluxGUI zusammenklicken und via Copy/Paste nach Grafana kopieren.

      P 1 Reply Last reply Reply Quote 0
      • P
        Peter 1 @ftd last edited by

        @ftd Deine Antworten bringen mich (und ggf. auch andere Anfänger) ein ganzes Stück weiter.

        Mir war nicht bewusst, dass es in Influx V2 es die Filter nicht mehr gibt. Aufhören etwas zu suchen was es nicht mehr gibt hilft schon mal 😉 Somit kann ich für mich diesen Weg abhaken.

        Auch auf eine alte Version von Influx zurückzuwechseln würde ich nicht machen wollen, wenn es noch einen anderen Weg gibt. Somit kann ich für mich auch diese Lösung abhaken.

        Die Datenpunkte aus dem ioBroker, welche ich visualisieren möchte, kann ich erst morgen zusenden, da ich unterwegs bin.
        Werde die Zeit nutzen mich tiefer mit der Syntax vom Query in Influx bzw. Grafana auseinandersetzten, damit ich die Tipps auch verstehen kann 😉

        P 1 Reply Last reply Reply Quote 0
        • P
          Peter 1 @Peter 1 last edited by

          Guten Morgen.

          Ich versuche mal die ioBroker Datenpunkte zu beschreiben, die ich visualisieren möchte.
          [Ich hoffe ich habe die Frage richtig verstanden 😉 ]

          Ganz allgemein in Kurzform das gesamte Vorhaben. (VIS da ich mehr anzeigen will als ein Diagramm, und weil ich dachte Grafana wäre das Tool um Diagramme zu machen)

          ioBroker (Smartmeter) - - > InfluxDB 2 - - > Grafana - - > ioBriker (VIS)

          So wie von ftd beschreiben hat, höre ich auf die Lösung in Grafana zu suchen, sondern in InfluxDB 2

          Aus dem ioBroker herraus speicher ich folgende Werte in der Datenbank InfluxDB2
          e5e9297f-1691-42d8-b448-a3ae354ffcec-grafik.png

          Einer der drei Werte. (Zählerstand)
          f6942bcb-a033-482c-b740-2a1df1d2f3f9-grafik.png

          Der Wert wird gespeichert und kann mir den Verauf im ioBroker ansehen
          006bbc53-d15a-461a-bbf2-4575825fe4a0-grafik.png

          Jetzt der wechsel nach InfluxDB
          9225adc2-d417-4853-9ee6-2f216d89e1f2-grafik.png

          und auf den Schalter "SCRIPT EDITOR" gedrückt.
          4d079392-42cc-44e3-aad8-cf06c6d04c85-grafik.png

          Und dann könne ich leider nicht weiter. Hier bräuchte ich dann Hilfe.

          ftd, ich hoffe das konnte deine Rückfrage beantworten 🤔

          S F 2 Replies Last reply Reply Quote 0
          • S
            SpacerX @Peter 1 last edited by SpacerX

            @peter-1

            zum Anzeigen der Tageswerte der kWh die Differenz berechnen lassen.

            |> aggregateWindow(every: 1d, fn: last, timeSrc: "_start")
            |> difference()
            
            1 Reply Last reply Reply Quote 0
            • F
              ftd @Peter 1 last edited by

              @peter-1 Grafana

              Rechts oben "Bar chart"

              X-Achse => Time

              Query:

              from(bucket: "iobroker")
                |> range(start: -30d, stop: now())
                |> filter(fn: (r) => r["_measurement"] == "1-0:1_8_0__255")
                |> filter(fn: (r) => r["from"] == "system.adapter.smartmeter.0")
                |> aggregateWindow(every: 1d, fn: last, createEmpty: false)
                |> difference(nonNegative: false, columns: ["_value"])
              

              Dann solltest du Bars haben, welche den täglichen Verbrauch anzeigen.

              Gehe ich richtig in der Annahme, dass 1-0:2_8__255 der Tageszähler ist?

              Wenn ja, kannst du auch den nehmen.... aber dann ohne Differenzen, sondern nur den letzten Wert auslesen.

              from(bucket: "iobroker")
                |> range(start: -30d, stop: now())
                |> filter(fn: (r) => r["_measurement"] == "1-0:2_8__255")
                |> filter(fn: (r) => r["from"] == "system.adapter.smartmeter.0")
                |> aggregateWindow(every: 1d, fn: last, createEmpty: false)
              
              P 1 Reply Last reply Reply Quote 0
              • P
                Peter 1 @ftd last edited by

                Hallo zusammen,

                leider bin ich erst jetzt wieder zuhause und konnte dazu eure Tipps umsetzten. Aber nur mit mehr oder weniger Erfolg ...

                Nach dem guten alten "try and error" habe ich es hin bekommen 😊
                Nochmal danke an der Stelle. Muss aber gestehen, habe das Ergebnis nicht kapiert sondern akzeptiert.

                Aber das Problem ist bei mir gelöst, und für den Fall das noch jemand das gleich Problem hat hier meine Query in Grafana (Ob der "gut" ist kann ich nicht sagen)

                from(bucket: "ioBroker")
                |> range(start: -7d, stop: now())
                |> filter(fn: (r) => r["_measurement"] == "smartmeter.0.1-0:1_8_0__255.value")
                |> filter(fn: (r) => r["_field"] == "value")
                |> aggregateWindow(every: 1d, fn: last, timeSrc: "_start")
                |> difference()
                |> yield(name: "mean")

                4878cbad-eee4-41f0-b951-c4aebe2e6acc-grafik.png


                @ftd , leider habe ich bei deinem Vorschlag eine Fehlermeldung bekommen.
                " Bar charts requires a string or time field "

                98dee097-5ba4-4cc1-9284-e5567cc5d3b0-grafik.png


                @SpacerX , leider habe ich auch bei deinem Vorschlag eine Fehlermeldung bekommen
                " No data "

                a0dcc897-57e6-42c9-bd59-c0d6346698ec-grafik.png


                An der Stelle noch eine kleine Frage von mir.
                Wie kann ich das Datum Format einstellen? Von MM/JJ + Uhrzeit hh:mm hinzu nur MM/JJ ohne Uhrzeit ?

                8ed659f7-96b7-4b85-8b48-6757c98062d7-grafik.png

                DJMarc75 1 Reply Last reply Reply Quote 0
                • DJMarc75
                  DJMarc75 @Peter 1 last edited by

                  @peter-1 sagte in ioBroker – Grafana Tagesverlauf – keine Variablen in Query:

                  Wie kann ich das Datum Format einstellen?

                  Dazu musst Du ein Override erstellen:
                  Screenshot 2022-10-04 115508.png

                  Bei Standard options > Unit gibst Du folgendes ein und bestätigst mit Enter:

                  time:MM.YY.
                  
                  P F 2 Replies Last reply Reply Quote 0
                  • P
                    Peter 1 @DJMarc75 last edited by

                    @djmarc75Hat funktioniert, Danke.

                    62690108-485d-4e23-9471-f9e383171428-grafik.png

                    1 Reply Last reply Reply Quote 0
                    • F
                      ftd @DJMarc75 last edited by

                      @djmarc75 + @Peter-1

                      Für 1 bis 30 Dashboards ja.... wenn ihr 375 Dashboards habt, macht ihr das nicht mehr in den Overrides...

                      grafana.ini

                      [date_formats]
                      full_date = DD.MM.YYYY
                      interval_day = DD.MM.
                      interval_hour = DD.MM. HH:mm
                      interval_minute = HH:mm
                      interval_month = MM-YYYY
                      interval_second = HH:mm:ss
                      interval_year = YYYY
                      

                      Ist beliebig anpassbar und kombinierbar.

                      P 1 Reply Last reply Reply Quote 0
                      • P
                        Peter 1 @ftd last edited by

                        @ftd Super Hinweis

                        1 Reply Last reply Reply Quote 0
                        • First post
                          Last post

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        286
                        Online

                        31.7k
                        Users

                        79.8k
                        Topics

                        1.3m
                        Posts

                        4
                        15
                        1530
                        Loading More Posts
                        • Oldest to Newest
                        • Newest to Oldest
                        • Most Votes
                        Reply
                        • Reply as topic
                        Log in to reply
                        Community
                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                        The ioBroker Community 2014-2023
                        logo