Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Off Topic
    4. Grafana - InfluxDB 2 - Tageswert wird Folgetag zugeordnet

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    Grafana - InfluxDB 2 - Tageswert wird Folgetag zugeordnet

    This topic has been deleted. Only users with topic management privileges can see it.
    • Homoran
      Homoran Global Moderator Administrators @CoComp last edited by

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

      dass die Lösung auch eher in einer "Verschiebung" in grafana

      wieso das?

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

      der letzte Wert wird dem aktuellen Tag mit timestamp 00:00 zugeordnet.

      00:00 gehört ni ht mehr zum "aktuellen" Tag, der endet um 23:59:59. 00:00 ist bereits der nächste.

      du musst es schaffen Werte zur Darstellung in Tagessummen bis Mitternacht in deine Historisierung zu bringen

      1 Reply Last reply Reply Quote 0
      • B
        bloop last edited by

        schon mit offset probiert?

        aggregateWindow(every: 1, offset:-1s, fn: max, createEmpty: false)
        
        1 Reply Last reply Reply Quote 0
        • DJMarc75
          DJMarc75 last edited by

          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!

          Homoran C 2 Replies Last reply Reply Quote 0
          • Homoran
            Homoran Global Moderator Administrators @DJMarc75 last edited by

            @djmarc75 so lange es um den Versuch ging, die richtige Uhrzeit für das Erstellen des Wertes in ioBroker zu realisieren, war es noch on Topic.

            da es jetzt doch um Bedienung von Grafana geht hat sich das geändert.

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

            ohne Bezug zu iobroker

            ist nicht immer eindeutig.
            da muss man immer warten wo es sich hin entwickelt.

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

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

              ist nicht immer eindeutig.
              da muss man immer warten wo es sich hin entwickelt.

              auch wieder richtig !

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

                @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 Reply Last reply Reply Quote 1
                • S
                  SpacerX @CoComp last edited by

                  @cocomp das utc korrigiert man idealer Weise so.

                  import "timezone"
                  option location = timezone.location(name: "Europe/Berlin")
                  
                  1 Reply Last reply Reply Quote 2
                  • A
                    AndreasK last edited by

                    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 Reply Last reply Reply Quote 0
                    • ?
                      A Former User @AndreasK last edited by

                      @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 Reply Last reply Reply Quote 0
                      • A
                        AndreasK @Guest last edited by

                        @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 Reply Last reply Reply Quote 0
                        • ?
                          A Former User @AndreasK last edited by A Former User

                          @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 Reply Last reply Reply Quote 0
                          • A
                            AndreasK last edited by

                            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

                            Glasfaser 1 Reply Last reply Reply Quote 0
                            • Glasfaser
                              Glasfaser @AndreasK last edited by 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 (“)

                              ? 1 Reply Last reply Reply Quote 0
                              • ?
                                A Former User @Glasfaser last edited by

                                @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

                                Glasfaser 1 Reply Last reply Reply Quote 0
                                • Glasfaser
                                  Glasfaser @Guest last edited by 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

                                  ? 1 Reply Last reply Reply Quote 0
                                  • ?
                                    A Former User @Glasfaser last edited by

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

                                    Ahh ... gar nicht oben gesehn

                                    Deswegen, wer kopiert, verliert 🙂

                                    VG
                                    Bernd

                                    1 Reply Last reply Reply Quote 1
                                    • A
                                      AndreasK last edited by

                                      Na toll 😊

                                      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 Reply Last reply Reply Quote 0
                                      • Marc Berg
                                        Marc Berg Most Active last edited by Marc Berg

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

                                        Na toll 😊

                                        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)

                                        1 Reply Last reply Reply Quote 0
                                        • ?
                                          A Former User @AndreasK last edited by

                                          @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 Reply Last reply Reply Quote 0
                                          • OstfrieseUnterwegs
                                            OstfrieseUnterwegs last edited by

                                            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 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            801
                                            Online

                                            31.9k
                                            Users

                                            80.2k
                                            Topics

                                            1.3m
                                            Posts

                                            grafana i influx2db kostal plenticore
                                            10
                                            26
                                            4025
                                            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