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 - InfluxDB 2 - Tageswert wird Folgetag zugeordnet

NEWS

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

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

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

Grafana - InfluxDB 2 - Tageswert wird Folgetag zugeordnet

Geplant Angeheftet Gesperrt Verschoben Off Topic
grafana iinflux2dbkostal plenticore
26 Beiträge 10 Kommentatoren 5.3k Aufrufe 10 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.
  • DJMarc75D DJMarc75

    Um anderen Grafana-Posts gerecht zu werden bitte diesen Beitrag in OffTopic verschieben - Warum? Weil: Grafanfragen ohne Bezug zu iobroker hier nicht passend sind ! Entweder in einem Forum für Grafana (da gibts sicher extern einige) oder im Bereich OffTopic aufmachen.
    Alles andere bringt hier nix.
    Nicht böse sondern praktisch gemeint!

    C Offline
    C Offline
    CoComp
    schrieb am zuletzt editiert von
    #12

    @bloop said in Grafana - InfluxDB 2 - Tageswert wird Folgetag zugeordnet:

    aggregateWindow(every: 1, offset:-1s, fn: max, createEmpty: false)

    Danke, die Richtung stimmte. Ich habe damit für die "Anzeige" in dem Zug auch mal das Delta zu UTC rausgenommen.

    aggregateWindow(every: 1d, offset:-121m, fn: max, createEmpty: false)
    

    und nun sieht es so aus und passt.
    b7c67e6b-e827-48b0-a464-7cd31f91fe0e-image.png

    S 1 Antwort Letzte Antwort
    1
    • C CoComp

      @bloop said in Grafana - InfluxDB 2 - Tageswert wird Folgetag zugeordnet:

      aggregateWindow(every: 1, offset:-1s, fn: max, createEmpty: false)

      Danke, die Richtung stimmte. Ich habe damit für die "Anzeige" in dem Zug auch mal das Delta zu UTC rausgenommen.

      aggregateWindow(every: 1d, offset:-121m, fn: max, createEmpty: false)
      

      und nun sieht es so aus und passt.
      b7c67e6b-e827-48b0-a464-7cd31f91fe0e-image.png

      S Offline
      S Offline
      SpacerX
      schrieb am zuletzt editiert von
      #13

      @cocomp das utc korrigiert man idealer Weise so.

      import "timezone"
      option location = timezone.location(name: "Europe/Berlin")
      

      DS720|Nuc8i3BEH|Proxmox|RaspberryMatic|ioBroker|influxDB2|Grafana

      1 Antwort Letzte Antwort
      2
      • A Offline
        A Offline
        AndreasK
        schrieb am zuletzt editiert von
        #14

        Hallo.
        Ich muss mal den alten Thread hoch holen.
        Ich habe genau das gleiche Problem.
        Ich lasse jeden Tag um 23:59 Uhr einen Wert in die InfluxDB schreiben.
        Influx ordnet diesen Wert aber dem Folgetag zu.
        Das liegt nun an InfluxDB und deren UTC Einstellung?
        Wo und wie verändere ich das?

        Gruß
        Andreas

        ? 1 Antwort Letzte Antwort
        0
        • A AndreasK

          Hallo.
          Ich muss mal den alten Thread hoch holen.
          Ich habe genau das gleiche Problem.
          Ich lasse jeden Tag um 23:59 Uhr einen Wert in die InfluxDB schreiben.
          Influx ordnet diesen Wert aber dem Folgetag zu.
          Das liegt nun an InfluxDB und deren UTC Einstellung?
          Wo und wie verändere ich das?

          Gruß
          Andreas

          ? Offline
          ? Offline
          Ein ehemaliger Benutzer
          schrieb am zuletzt editiert von
          #15

          @andreask sagte in Grafana - InfluxDB 2 - Tageswert wird Folgetag zugeordnet:

          Das liegt nun an InfluxDB und deren UTC Einstellung?
          Wo und wie verändere ich das?

          Moin,

          du must das in die Abfrage mit einfügen

          Für influxDB V. 2.x in der Abfragesprache FLUX hier ein Beispiel und Doku

          import “timezone”
          option location = timezone.location(name: “Europe/Berlin”)
          from(bucket: “stromzaehler”)
          |> range(start: today())
          |> filter(fn: (r) => r["_measurement"] == “stromzaehler”)
          

          Es soll aber auch das gehen, so deine Version von influxDB > V 2.1 ist, Beispiel und Doku

          option location = loadLocation(name:"Europe/Berlin")
          from(bucket: “stromzaehler”)
          |> range(start: today())
          |> filter(fn: (r) => r["_measurement"] == “stromzaehler”)
          

          VG
          Bernd

          A 1 Antwort Letzte Antwort
          0
          • ? Ein ehemaliger Benutzer

            @andreask sagte in Grafana - InfluxDB 2 - Tageswert wird Folgetag zugeordnet:

            Das liegt nun an InfluxDB und deren UTC Einstellung?
            Wo und wie verändere ich das?

            Moin,

            du must das in die Abfrage mit einfügen

            Für influxDB V. 2.x in der Abfragesprache FLUX hier ein Beispiel und Doku

            import “timezone”
            option location = timezone.location(name: “Europe/Berlin”)
            from(bucket: “stromzaehler”)
            |> range(start: today())
            |> filter(fn: (r) => r["_measurement"] == “stromzaehler”)
            

            Es soll aber auch das gehen, so deine Version von influxDB > V 2.1 ist, Beispiel und Doku

            option location = loadLocation(name:"Europe/Berlin")
            from(bucket: “stromzaehler”)
            |> range(start: today())
            |> filter(fn: (r) => r["_measurement"] == “stromzaehler”)
            

            VG
            Bernd

            A Offline
            A Offline
            AndreasK
            schrieb am zuletzt editiert von
            #16

            @dp20eic
            Sorry, wenn ich fragen muss. Bin neu in dem Thema!
            In die Query von Grafana?
            Ich habe die InfluxDB v2.6.1 am Laufen

            ? 1 Antwort Letzte Antwort
            0
            • A AndreasK

              @dp20eic
              Sorry, wenn ich fragen muss. Bin neu in dem Thema!
              In die Query von Grafana?
              Ich habe die InfluxDB v2.6.1 am Laufen

              ? Offline
              ? Offline
              Ein ehemaliger Benutzer
              schrieb am zuletzt editiert von Ein ehemaliger Benutzer
              #17

              @andreask sagte in Grafana - InfluxDB 2 - Tageswert wird Folgetag zugeordnet:

              @dp20eic
              Sorry, wenn ich fragen muss. Bin neu in dem Thema!
              In die Query von Grafana?
              Ich habe die InfluxDB v2.6.1 am Laufen

              Moin,
              ja,, in Grafana im Panel/Daschborad welches du anpassen musst. Die Abfragesprache ist halt influxDB - Flux, wenn dein Grafana gegen eine influxDB V 2.x gebunden ist und Du dort mit FLUX abfragst.

              VG
              Bernd

              Edit, Bild gelöscht, da es mehr verwirrt als hilft.

              1 Antwort Letzte Antwort
              0
              • A Offline
                A Offline
                AndreasK
                schrieb am zuletzt editiert von
                #18

                Hallo.
                Aktuell sieht meine Query so aus

                import “timezone”
                
                option location = timezone.location(name: “Europe/Berlin”)
                
                from(bucket: "iobroker")
                  |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
                  |> filter(fn: (r) => r["_measurement"] == "Täglicher Stromverbrauch")
                  |> filter(fn: (r) => r["_field"] == "value")
                  |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)
                  |> yield(name: "mean")
                

                Nun bekomme aber folgende Fehlermeldung

                invalid: compilation failed: error @1:8-1:11: expected STRING, got ILLEGAL (“) at 1:8 error @1:8-1:11: invalid string literal error @1:19-1:22: invalid statement: ” error @3:37-3:59: invalid expression @3:59-3:62: ” error @3:46-3:52: invalid expression @3:43-3:46: “
                

                Als Datenquelle habe ich IngfluxDB mit Query Language "Flux" eingerichtet

                GlasfaserG 1 Antwort Letzte Antwort
                0
                • A AndreasK

                  Hallo.
                  Aktuell sieht meine Query so aus

                  import “timezone”
                  
                  option location = timezone.location(name: “Europe/Berlin”)
                  
                  from(bucket: "iobroker")
                    |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
                    |> filter(fn: (r) => r["_measurement"] == "Täglicher Stromverbrauch")
                    |> filter(fn: (r) => r["_field"] == "value")
                    |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)
                    |> yield(name: "mean")
                  

                  Nun bekomme aber folgende Fehlermeldung

                  invalid: compilation failed: error @1:8-1:11: expected STRING, got ILLEGAL (“) at 1:8 error @1:8-1:11: invalid string literal error @1:19-1:22: invalid statement: ” error @3:37-3:59: invalid expression @3:59-3:62: ” error @3:46-3:52: invalid expression @3:43-3:46: “
                  

                  Als Datenquelle habe ich IngfluxDB mit Query Language "Flux" eingerichtet

                  GlasfaserG Offline
                  GlasfaserG Offline
                  Glasfaser
                  schrieb am zuletzt editiert von Glasfaser
                  #19

                  @andreask sagte in Grafana - InfluxDB 2 - Tageswert wird Folgetag zugeordnet:

                  import “timezone”
                  “Europe/Berlin”)

                  die Anführungszeichen " sind falsch , liegt an deiner Tastatur !!!

                  Steht auch in der Meldung :

                  got ILLEGAL (“)

                  Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

                  ? 1 Antwort Letzte Antwort
                  0
                  • GlasfaserG Glasfaser

                    @andreask sagte in Grafana - InfluxDB 2 - Tageswert wird Folgetag zugeordnet:

                    import “timezone”
                    “Europe/Berlin”)

                    die Anführungszeichen " sind falsch , liegt an deiner Tastatur !!!

                    Steht auch in der Meldung :

                    got ILLEGAL (“)

                    ? Offline
                    ? Offline
                    Ein ehemaliger Benutzer
                    schrieb am zuletzt editiert von
                    #20

                    @glasfaser

                    Warst schneller :)

                    Neh, kann auch an dem Kopierten von mir liegen :(

                    Wollte Ihm auch gerade die Fehlermeldungen mal erklären, für die Zukunft ;)

                    VG
                    Bernd

                    GlasfaserG 1 Antwort Letzte Antwort
                    0
                    • ? Ein ehemaliger Benutzer

                      @glasfaser

                      Warst schneller :)

                      Neh, kann auch an dem Kopierten von mir liegen :(

                      Wollte Ihm auch gerade die Fehlermeldungen mal erklären, für die Zukunft ;)

                      VG
                      Bernd

                      GlasfaserG Offline
                      GlasfaserG Offline
                      Glasfaser
                      schrieb am zuletzt editiert von Glasfaser
                      #21

                      @dp20eic sagte in Grafana - InfluxDB 2 - Tageswert wird Folgetag zugeordnet:

                      Neh, kann auch an dem Kopierten von mir liegen

                      Ahh ... gar nicht oben gesehn :)

                      57999da1-7cea-42ef-b835-a8bf52ac6c4a-grafik.png

                      Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

                      ? 1 Antwort Letzte Antwort
                      0
                      • GlasfaserG Glasfaser

                        @dp20eic sagte in Grafana - InfluxDB 2 - Tageswert wird Folgetag zugeordnet:

                        Neh, kann auch an dem Kopierten von mir liegen

                        Ahh ... gar nicht oben gesehn :)

                        57999da1-7cea-42ef-b835-a8bf52ac6c4a-grafik.png

                        ? Offline
                        ? Offline
                        Ein ehemaliger Benutzer
                        schrieb am zuletzt editiert von
                        #22

                        @glasfaser sagte in Grafana - InfluxDB 2 - Tageswert wird Folgetag zugeordnet:

                        Ahh ... gar nicht oben gesehn

                        Deswegen, wer kopiert, verliert :)

                        VG
                        Bernd

                        1 Antwort Letzte Antwort
                        1
                        • A Offline
                          A Offline
                          AndreasK
                          schrieb am zuletzt editiert von
                          #23

                          Na toll :blush:

                          Nun habe ich es richtig hinzugefügt. Aber trotzdem wird der Wert, welcher laut iobroker am 29.01. um 23:59 Uhr (unter letzter Änderung) ins Objekt geschrieben wurde, immer noch im Balken des 30.01. angezeigt.
                          Was ist hier immer noch falsch?

                          ? 1 Antwort Letzte Antwort
                          0
                          • Marc BergM Offline
                            Marc BergM Offline
                            Marc Berg
                            Most Active
                            schrieb am zuletzt editiert von Marc Berg
                            #24

                            @andreask sagte in Grafana - InfluxDB 2 - Tageswert wird Folgetag zugeordnet:

                            Na toll :blush:

                            Nun habe ich es richtig hinzugefügt. Aber trotzdem wird der Wert, welcher laut iobroker am 29.01. um 23:59 Uhr (unter letzter Änderung) ins Objekt geschrieben wurde, immer noch im Balken des 30.01. angezeigt.
                            Was ist hier immer noch falsch?

                            Mit Deiner Abfrage stellst Du nicht sicher, dass ein "aggregateWindow" auch exakt um 00:00 Uhr startet. Es könnte je nach Ausführungsstart auch um 23:50 Uhr starten und bis 00:05 Uhr gehen. Durch die Dynamik in der Abfrage (v.timeRangestart ...) ist das eher zufällig.

                            Ich habe das so gelöst, wobei ich je nach Abfragezeitraum noch fixe aggregateWindows berechne. Beachte dabei den Teil "date.truncate"!
                            Meine Abfrage bezieht sich auf einen Zählerstand, deshalb "difference", das müsstest Du für Dich anpassen.

                            import "date"
                            import "timezone"
                            option location = timezone.location(name: "Europe/Berlin")
                            v_duration = duration(v:uint(v: v.timeRangeStop) - uint(v: v.timeRangeStart))
                            v_every = if int(v:v_duration) <= int(v:2d) then 1h 
                                      else if int(v:v_duration) <= int(v:7d) then 6h
                                      else if int(v:v_duration) <= int(v:30d) then 24h
                                      else 1w
                            
                            from(bucket: "iobroker")
                              |> range(start:date.truncate(t:v.timeRangeStart, unit:v_every), stop: v.timeRangeStop)
                              |> filter(fn: (r) => r["_measurement"] == "mqtt.0.power.Elektro.ZaehlerStandE")
                              |> filter(fn: (r) => r["_field"] == "value")
                              |> difference()
                              |> aggregateWindow(every: v_every,fn:sum,timeSrc: "_start",createEmpty:false)
                            

                            Kann sein, dass es irgendwie auch einfacher geht. Eine bessere Lösung habe ich aber bisher nicht gefunden.

                            Edit: timeSrc: "_start" nicht vergessen! (letzte Zeile)

                            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.

                            1 Antwort Letzte Antwort
                            0
                            • A AndreasK

                              Na toll :blush:

                              Nun habe ich es richtig hinzugefügt. Aber trotzdem wird der Wert, welcher laut iobroker am 29.01. um 23:59 Uhr (unter letzter Änderung) ins Objekt geschrieben wurde, immer noch im Balken des 30.01. angezeigt.
                              Was ist hier immer noch falsch?

                              ? Offline
                              ? Offline
                              Ein ehemaliger Benutzer
                              schrieb am zuletzt editiert von
                              #25

                              @andreask @Marc-Berg

                              Bin mir nicht sicher, ob das passt, habe keine passenden Daten.

                                |> range(start: today())
                                |> aggregateWindow(every: 1h, fn: mean, createEmpty: false)
                              

                              VG
                              Bernd

                              1 Antwort Letzte Antwort
                              0
                              • OstfrieseUnterwegsO Offline
                                OstfrieseUnterwegsO Offline
                                OstfrieseUnterwegs
                                schrieb am zuletzt editiert von
                                #26

                                Hier ist meine Lösung zu einem ähnlichen Problem. Sourceanalytix schreibt den Tagesverbrauch immer 00:01 am nächsten Tag. Ich hab also in Grafana ein Shift eingebaut. Unique brauche ich, weil SA bei Neustart des Adapters den Wert erneut schreibt.

                                from(bucket: "iobroker")
                                  |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
                                  |> filter(fn: (r) => r["_measurement"] == "multimedia-power-consumed")
                                  |> filter(fn: (r) => r["_field"] == "value")
                                  |> timeShift(duration: -24h)
                                  |> aggregateWindow(every: v.windowPeriod, fn: unique, createEmpty: false)
                                  |> unique()
                                  |> fill(column: "value", usePrevious: true)
                                 
                                
                                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

                                766

                                Online

                                32.4k

                                Benutzer

                                81.6k

                                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