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. Grafana + Influx 2 + Flux + Bar Gauge

NEWS

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

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

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

Grafana + Influx 2 + Flux + Bar Gauge

Geplant Angeheftet Gesperrt Verschoben Grafana
51 Beiträge 6 Kommentatoren 3.2k Aufrufe 5 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.
  • L Laser

    @spacerx Sowas will ich ja machen. Das zu überschreibende Feld auswählen. Das geht ja mit dem Pfeil rechts/ "wählen". Zu lang, wird abgeschnitten. 2. Version: kopieren des Namens aus dem Bucket- hat nicht geklappt. 3. suchen nach "Tuesday" funktioniert, aber nur so lange, wie es diese Bezeichnung nur 1x gibt, bei öfteren Vorkommen von "thuesday"wird es problematisch. Endet wieder in einer endlosen Versuchsreihe.
    EDIT: kopieren eines längeren Teiles aus dem Namen (in der Hoffnung, dieser Teil ist einmalig) und danach suchen lassen. Hat erst mal funktioniert. Weitertesten ist angesagt. Schön ist etwas Anderes! FLUX finde ich nicht so toll! Ist umfangreich, aber auch sehr umständlich zu bedienen.

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

    @laser Ich hab hier noch einen Link zu Value Mapping
    https://grafana.com/docs/grafana/latest/panels-visualizations/configure-value-mappings/

    Edit:
    Ah ne das wird nichts, geht ja nicht um die Value. Sorry

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

    L 1 Antwort Letzte Antwort
    0
    • S SpacerX

      @laser Ich hab hier noch einen Link zu Value Mapping
      https://grafana.com/docs/grafana/latest/panels-visualizations/configure-value-mappings/

      Edit:
      Ah ne das wird nichts, geht ja nicht um die Value. Sorry

      L Offline
      L Offline
      Laser
      schrieb am zuletzt editiert von
      #10

      @spacerx Das Feld rechts läßt sich ja doch vergrößern! Auf einem sehr breitem Monitor klappt auch die Auswahl beim Override. Nichts für kleine Bildschirme.

      1 Antwort Letzte Antwort
      0
      • L Laser

        @spacerx Sowas will ich ja machen. Das zu überschreibende Feld auswählen. Das geht ja mit dem Pfeil rechts/ "wählen". Zu lang, wird abgeschnitten. 2. Version: kopieren des Namens aus dem Bucket- hat nicht geklappt. 3. suchen nach "Tuesday" funktioniert, aber nur so lange, wie es diese Bezeichnung nur 1x gibt, bei öfteren Vorkommen von "thuesday"wird es problematisch. Endet wieder in einer endlosen Versuchsreihe.
        EDIT: kopieren eines längeren Teiles aus dem Namen (in der Hoffnung, dieser Teil ist einmalig) und danach suchen lassen. Hat erst mal funktioniert. Weitertesten ist angesagt. Schön ist etwas Anderes! FLUX finde ich nicht so toll! Ist umfangreich, aber auch sehr umständlich zu bedienen.

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

        @laser sagte in Grafana + Influx 2 + Flux + Bar Gauge:

        Sowas will ich ja machen. Das zu überschreibende Feld auswählen.

        Moin,

        ist jetzt vielleicht nicht die beste Lösung, da Du ja schon Daten in der Datenbank stehen hast, die diesen elendig langen Namen tragen.

        Aber für zukünftige Vorhaben, kann man das ja versuchen, zu berücksichtigen :)

        Du kannst beim DP, wenn Du ihn in eine DB oder in History speicherst, einen kürzeren Namen vergeben.
        712f4c97-54c5-47fc-a37c-69157d076558-image.png

        Nachträglich kann man das auch noch ändern,

        1. Export der Daten als CSV Namen anpassen und wieder Importieren, siehe Doku influxDB
        2. Die vorhandenen Werte durch einen Task in influxDB umformen, sprich Namen kürzen und in ein anderes Bucket schreiben, das dann nutzen, um die Diagramme zu bauen.
        3. FLUX abfrage so gestalten, dass der originale Name ersetzt wird, z.B.:
        import "timezone"
        option location = timezone.location(name: "Europe/Berlin")
        from(bucket: "iobroker_strom")
        |> range(start: -7d, stop: now())
        |> filter(fn: (r) => r["_measurement"] == "sonoff.0.DVES_8AA766.SENSOR.SML.total_kwh")
        |> filter(fn: (r) => r["_field"] == "value")
        // hier ersetze ich den langen Namen "sonoff.0.DVES_8AA766.SENSOR.SML.total_kwh" in "aktuelle Woche"
        |> set(key: "_field", value: "aktuelle Woche")
        |> drop(columns:["from","ack", "q"])
        |> aggregateWindow(every: 1d, fn: last, timeSrc: "_start", createEmpty: false)
        |> difference()
        

        VG
        Bernd

        1 Antwort Letzte Antwort
        1
        • L Laser

          @spacerx Sowas will ich ja machen. Das zu überschreibende Feld auswählen. Das geht ja mit dem Pfeil rechts/ "wählen". Zu lang, wird abgeschnitten. 2. Version: kopieren des Namens aus dem Bucket- hat nicht geklappt. 3. suchen nach "Tuesday" funktioniert, aber nur so lange, wie es diese Bezeichnung nur 1x gibt, bei öfteren Vorkommen von "thuesday"wird es problematisch. Endet wieder in einer endlosen Versuchsreihe.
          EDIT: kopieren eines längeren Teiles aus dem Namen (in der Hoffnung, dieser Teil ist einmalig) und danach suchen lassen. Hat erst mal funktioniert. Weitertesten ist angesagt. Schön ist etwas Anderes! FLUX finde ich nicht so toll! Ist umfangreich, aber auch sehr umständlich zu bedienen.

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

          @laser sagte in Grafana + Influx 2 + Flux + Bar Gauge:

          Schön ist etwas Anderes! FLUX finde ich nicht so toll! Ist umfangreich, aber auch sehr umständlich zu bedienen.

          Moin,

          das ist nicht das Problem von FLUX, das ist ja nur die Abfragesprache, dass die GUI von Grafana keine Langen XXL Namen anzeigen kann, ist ja eher Dein Problem, wenn Du die Namen so in der DB abspeicherst ;)
          Ich habe leider kein Beispiel, kann mir aber vorstellen, wenn Du in dem Feld anfängst zu tippen, dass dann die Auswahl eingeschränkt wird, bis das passende angezeigt wird.

          VG
          Bernd

          1 Antwort Letzte Antwort
          0
          • L Laser

            @spacerx
            Das geht schon in die Richtung. Bisher ist mir nur gelungen, daß immer z.B. "Montag! in allen Feldern steht.
            Die Unterschrift meiner Balken (einzelne Werte aus Sourceanalytix) ist aber kein Datum, sondern ein Objektname.
            c504c2d5-d930-4d0a-906f-0a23c841bf99-image.png
            Dieser Name ist aber so lang, daß er beim Auswählen rechts aus dem Bild hinausgeht und nicht sichtbar ist.

            0cc856ac-daaa-4290-b936-c0130d8d3168-image.png

            mit einem Zufallstreffer hat es 1x geklappt:
            8322c606-ea90-474f-8737-4e8ad5659305-image.png

            Marc BergM Online
            Marc BergM Online
            Marc Berg
            Most Active
            schrieb am zuletzt editiert von Marc Berg
            #13

            @laser sagte in Grafana + Influx 2 + Flux + Bar Gauge:

            @spacerx
            Das geht schon in die Richtung. Bisher ist mir nur gelungen, daß immer z.B. "Montag! in allen Feldern steht.
            Die Unterschrift meiner Balken (einzelne Werte aus Sourceanalytix) ist aber kein Datum, sondern ein Objektname.

            Dieser Name ist aber so lang, daß er beim Auswählen rechts aus dem Bild hinausgeht und nicht sichtbar ist.

            mit einem Zufallstreffer hat es 1x geklappt:

            ein mögliche Lösung wäre, an deine Queries anzuhängen:

              |> keep(columns: ["_value"])
              |> rename(columns: {_value:"Montag"})
            
              |> keep(columns: ["_value"])
              |> rename(columns: {_value:"Dienstag"})
            

            Damit entfernst du alle anderen Spalten und Grafana bekommt nur den "Kurznamen", also Spaltennamen. Das setzt natürlich voraus, dass die Spalte "_value" existiert und vorher nicht schon umbenannt wurde.

            af3c429f-9d77-4ffe-8057-17b6baf62fe5-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.

            L 1 Antwort Letzte Antwort
            2
            • Marc BergM Marc Berg

              @laser sagte in Grafana + Influx 2 + Flux + Bar Gauge:

              @spacerx
              Das geht schon in die Richtung. Bisher ist mir nur gelungen, daß immer z.B. "Montag! in allen Feldern steht.
              Die Unterschrift meiner Balken (einzelne Werte aus Sourceanalytix) ist aber kein Datum, sondern ein Objektname.

              Dieser Name ist aber so lang, daß er beim Auswählen rechts aus dem Bild hinausgeht und nicht sichtbar ist.

              mit einem Zufallstreffer hat es 1x geklappt:

              ein mögliche Lösung wäre, an deine Queries anzuhängen:

                |> keep(columns: ["_value"])
                |> rename(columns: {_value:"Montag"})
              
                |> keep(columns: ["_value"])
                |> rename(columns: {_value:"Dienstag"})
              

              Damit entfernst du alle anderen Spalten und Grafana bekommt nur den "Kurznamen", also Spaltennamen. Das setzt natürlich voraus, dass die Spalte "_value" existiert und vorher nicht schon umbenannt wurde.

              af3c429f-9d77-4ffe-8057-17b6baf62fe5-grafik.png

              L Offline
              L Offline
              Laser
              schrieb am zuletzt editiert von
              #14

              @marc-berg sagte in Grafana + Influx 2 + Flux + Bar Gauge:

              |> keep(columns: ["_value"]) |> rename(columns: {_value:"Montag"})
              Das sieht dann so aus:
              96bf40c8-0613-4516-a5e6-b4ef5ea28d26-image.png
              Das ist sicher der elegantere Weg. Passt nur noch nicht ganz.

              Marc BergM 1 Antwort Letzte Antwort
              0
              • L Laser

                @marc-berg sagte in Grafana + Influx 2 + Flux + Bar Gauge:

                |> keep(columns: ["_value"]) |> rename(columns: {_value:"Montag"})
                Das sieht dann so aus:
                96bf40c8-0613-4516-a5e6-b4ef5ea28d26-image.png
                Das ist sicher der elegantere Weg. Passt nur noch nicht ganz.

                Marc BergM Online
                Marc BergM Online
                Marc Berg
                Most Active
                schrieb am zuletzt editiert von Marc Berg
                #15

                @laser sagte in Grafana + Influx 2 + Flux + Bar Gauge:

                Das ist sicher der elegantere Weg. Passt nur noch nicht ganz.

                Zeig mal deine Queries. Hast du vielleicht noch Overrides definiert?

                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.

                L 1 Antwort Letzte Antwort
                0
                • Marc BergM Marc Berg

                  @laser sagte in Grafana + Influx 2 + Flux + Bar Gauge:

                  Das ist sicher der elegantere Weg. Passt nur noch nicht ganz.

                  Zeig mal deine Queries. Hast du vielleicht noch Overrides definiert?

                  L Offline
                  L Offline
                  Laser
                  schrieb am zuletzt editiert von Laser
                  #16

                  @marc-berg
                  from(bucket: "iobroker")
                  |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
                  |> filter(fn: (r) => r["_measurement"] == "sourceanalytix.0.alias__0__OpenDTU-Gesamptproduktion__yieldtotal.currentYear.delivered.currentWeek.01_Monday")
                  |> filter(fn: (r) => r["_field"] == "value")
                  |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)
                  |> yield(name: "mean")
                  |> keep(columns: ["_value"])
                  |> rename(columns: {_value:"Montag"})

                  keine overides

                  Marc BergM 1 Antwort Letzte Antwort
                  0
                  • L Laser

                    @marc-berg
                    from(bucket: "iobroker")
                    |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
                    |> filter(fn: (r) => r["_measurement"] == "sourceanalytix.0.alias__0__OpenDTU-Gesamptproduktion__yieldtotal.currentYear.delivered.currentWeek.01_Monday")
                    |> filter(fn: (r) => r["_field"] == "value")
                    |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)
                    |> yield(name: "mean")
                    |> keep(columns: ["_value"])
                    |> rename(columns: {_value:"Montag"})

                    keine overides

                    Marc BergM Online
                    Marc BergM Online
                    Marc Berg
                    Most Active
                    schrieb am zuletzt editiert von Marc Berg
                    #17

                    @laser sagte in Grafana + Influx 2 + Flux + Bar Gauge:

                    |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)
                    |> yield(name: "mean")

                    das muss weg, wenn ich die Anforderung richtig verstehe:

                    |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)
                    |> yield(name: "mean")
                    

                    und das hier muss in Grafana eingestellt sein:

                    4fadcb47-d27f-4c8e-9efe-f6fb790da92f-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.

                    L 1 Antwort Letzte Antwort
                    1
                    • Marc BergM Marc Berg

                      @laser sagte in Grafana + Influx 2 + Flux + Bar Gauge:

                      |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)
                      |> yield(name: "mean")

                      das muss weg, wenn ich die Anforderung richtig verstehe:

                      |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)
                      |> yield(name: "mean")
                      

                      und das hier muss in Grafana eingestellt sein:

                      4fadcb47-d27f-4c8e-9efe-f6fb790da92f-grafik.png

                      L Offline
                      L Offline
                      Laser
                      schrieb am zuletzt editiert von Laser
                      #18

                      @marc-berg So ist es OK!
                      from(bucket: "iobroker")
                      |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
                      |> filter(fn: (r) => r["_measurement"] == "sourceanalytix.0.alias__0__OpenDTU-Gesamptproduktion__yieldtotal.currentYear.delivered.currentWeek.01_Monday")
                      |> filter(fn: (r) => r["_field"] == "value")
                      |> keep(columns: ["_value"])
                      |> rename(columns: {_value:"Montag"})
                      c4a761a8-4116-449a-b0d1-49807b6e4888-image.png

                      Und:
                      4da8e477-e526-4e56-b950-350413dbd530-image.png

                      Das ist für mich absolutes Neuland. Da muß ich mich erst einarbeiten.

                      L 1 Antwort Letzte Antwort
                      0
                      • L Laser

                        @marc-berg So ist es OK!
                        from(bucket: "iobroker")
                        |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
                        |> filter(fn: (r) => r["_measurement"] == "sourceanalytix.0.alias__0__OpenDTU-Gesamptproduktion__yieldtotal.currentYear.delivered.currentWeek.01_Monday")
                        |> filter(fn: (r) => r["_field"] == "value")
                        |> keep(columns: ["_value"])
                        |> rename(columns: {_value:"Montag"})
                        c4a761a8-4116-449a-b0d1-49807b6e4888-image.png

                        Und:
                        4da8e477-e526-4e56-b950-350413dbd530-image.png

                        Das ist für mich absolutes Neuland. Da muß ich mich erst einarbeiten.

                        L Offline
                        L Offline
                        Laser
                        schrieb am zuletzt editiert von Laser
                        #19

                        @Marc-Berg
                        Die Unterschrift wird geändert. Jedoch ändert sich auch der angezeigte Zahlenwert. 1,54 werden angezeigt, 1,97 müssten es sein.
                        def07b60-bb3d-42f8-b448-7a1489aa10eb-image.png

                        1 Antwort Letzte Antwort
                        0
                        • Marc BergM Online
                          Marc BergM Online
                          Marc Berg
                          Most Active
                          schrieb am zuletzt editiert von
                          #20

                          @laser sagte in Grafana + Influx 2 + Flux + Bar Gauge:

                          @Marc-Berg
                          Die Unterschrift wird geändert. Jedoch ändert sich auch der angezeigte Zahlenwert. 1,54 werden angezeigt, 1,97 müssten es sein.

                          Verstehe gerade Null, was du meinst. Außerdem wurden doch oben in deinem Beispiel für Montag vorher und nach den Änderungen jeweils 2.59kWh angezeigt!?

                          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.

                          L 1 Antwort Letzte Antwort
                          0
                          • Marc BergM Marc Berg

                            @laser sagte in Grafana + Influx 2 + Flux + Bar Gauge:

                            @Marc-Berg
                            Die Unterschrift wird geändert. Jedoch ändert sich auch der angezeigte Zahlenwert. 1,54 werden angezeigt, 1,97 müssten es sein.

                            Verstehe gerade Null, was du meinst. Außerdem wurden doch oben in deinem Beispiel für Montag vorher und nach den Änderungen jeweils 2.59kWh angezeigt!?

                            L Offline
                            L Offline
                            Laser
                            schrieb am zuletzt editiert von
                            #21

                            @marc-berg Ja, es wird etwas angezeigt. Aber bei genauer Kontrolle, zum Beispiel am Sonntag (aktueller Tag), habe ich den Wert in den Objekten mit dem angezeigten Wert nach der Korrektur der Unterschrift verglichen. Die beiden Werte stimmen nicht überein. Ohne die Korrektur schon. In der Datenbank steht auch der richtige Wert. ( Bildschirmausdruck).

                            Marc BergM 1 Antwort Letzte Antwort
                            0
                            • L Laser

                              @marc-berg Ja, es wird etwas angezeigt. Aber bei genauer Kontrolle, zum Beispiel am Sonntag (aktueller Tag), habe ich den Wert in den Objekten mit dem angezeigten Wert nach der Korrektur der Unterschrift verglichen. Die beiden Werte stimmen nicht überein. Ohne die Korrektur schon. In der Datenbank steht auch der richtige Wert. ( Bildschirmausdruck).

                              Marc BergM Online
                              Marc BergM Online
                              Marc Berg
                              Most Active
                              schrieb am zuletzt editiert von Marc Berg
                              #22

                              @laser
                              Wenn ich es richtig verstehe, soll doch der Wert, der in diesem Datenpunkt steht:

                              3dc8c3c0-d27e-4700-9372-52d6c1851409-grafik.png

                              1:1 angezeigt werden, oder? Das wäre dann der letzte Wert, der in die Datenbank geloggt wurde.
                              Vor diesem Hintergrund ergibt es für mich keinen Sinn, mit einem Mittelwert über die Funktion "aggregateWindow (mean)" zu arbeiten. Stattdessen wirst du mit |> last() den jüngsten Wert erhalten.

                              Vielleicht zeigst du einfach mal den Inhalt des Datenpunkts und die letzten geloggten Werte in der Influxdb. Villeicht lässt es sich das Problem damit besser auflösen.

                              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.

                              L 1 Antwort Letzte Antwort
                              0
                              • Marc BergM Marc Berg

                                @laser
                                Wenn ich es richtig verstehe, soll doch der Wert, der in diesem Datenpunkt steht:

                                3dc8c3c0-d27e-4700-9372-52d6c1851409-grafik.png

                                1:1 angezeigt werden, oder? Das wäre dann der letzte Wert, der in die Datenbank geloggt wurde.
                                Vor diesem Hintergrund ergibt es für mich keinen Sinn, mit einem Mittelwert über die Funktion "aggregateWindow (mean)" zu arbeiten. Stattdessen wirst du mit |> last() den jüngsten Wert erhalten.

                                Vielleicht zeigst du einfach mal den Inhalt des Datenpunkts und die letzten geloggten Werte in der Influxdb. Villeicht lässt es sich das Problem damit besser auflösen.

                                L Offline
                                L Offline
                                Laser
                                schrieb am zuletzt editiert von Laser
                                #23

                                @marc-berg der Sonntag mit den Problemwerten ist ja nun vorbei. Hier der Wert des Objektes (nun "vergangene Woche")
                                4dc7b80f-8bf9-4956-95a9-22674f54dbd3-image.png
                                angezeigt wurde das in meinem vorherigen Beitrag gezeigte.
                                Eine Befehlsrefernz , wo z.B. "mean" und "last" erklärt wird, suche ich noch. Das "mean" könnte der Fehler sein.
                                Diese Befehlsfolge wurde automatisch erstellt, ich habe da nichts dazu getan.
                                Aber das kommt ja in der abgewandelten Form in Grafana gar nicht mehr vor?

                                from(bucket: "iobroker")
                                  |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
                                  |> filter(fn: (r) => r["_measurement"] == "sourceanalytix.0.alias__0__Panel power V-Ladegerät__PPV.currentYear.delivered.currentWeek.01_Monday")
                                  |> filter(fn: (r) => r["_field"] == "value")
                                  |> keep(columns: ["_value"])
                                  |> rename(columns: {_value:"Montag"})
                                

                                Nur in der Datenbank selber:

                                from(bucket: "iobroker")
                                  |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
                                  |> filter(fn: (r) => r["_measurement"] == "sourceanalytix.0.alias__0__Panel power V-Ladegerät__PPV.currentYear.delivered.currentWeek.01_Monday")
                                  |> filter(fn: (r) => r["_field"] == "value")
                                  |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)
                                  |> yield(name: "mean")
                                
                                Marc BergM 1 Antwort Letzte Antwort
                                0
                                • L Laser

                                  @marc-berg der Sonntag mit den Problemwerten ist ja nun vorbei. Hier der Wert des Objektes (nun "vergangene Woche")
                                  4dc7b80f-8bf9-4956-95a9-22674f54dbd3-image.png
                                  angezeigt wurde das in meinem vorherigen Beitrag gezeigte.
                                  Eine Befehlsrefernz , wo z.B. "mean" und "last" erklärt wird, suche ich noch. Das "mean" könnte der Fehler sein.
                                  Diese Befehlsfolge wurde automatisch erstellt, ich habe da nichts dazu getan.
                                  Aber das kommt ja in der abgewandelten Form in Grafana gar nicht mehr vor?

                                  from(bucket: "iobroker")
                                    |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
                                    |> filter(fn: (r) => r["_measurement"] == "sourceanalytix.0.alias__0__Panel power V-Ladegerät__PPV.currentYear.delivered.currentWeek.01_Monday")
                                    |> filter(fn: (r) => r["_field"] == "value")
                                    |> keep(columns: ["_value"])
                                    |> rename(columns: {_value:"Montag"})
                                  

                                  Nur in der Datenbank selber:

                                  from(bucket: "iobroker")
                                    |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
                                    |> filter(fn: (r) => r["_measurement"] == "sourceanalytix.0.alias__0__Panel power V-Ladegerät__PPV.currentYear.delivered.currentWeek.01_Monday")
                                    |> filter(fn: (r) => r["_field"] == "value")
                                    |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)
                                    |> yield(name: "mean")
                                  
                                  Marc BergM Online
                                  Marc BergM Online
                                  Marc Berg
                                  Most Active
                                  schrieb am zuletzt editiert von Marc Berg
                                  #24

                                  @laser sagte in Grafana + Influx 2 + Flux + Bar Gauge:

                                  Diese Befehlsfolge wurde automatisch erstellt, ich habe da nichts dazu getan.

                                  Genau das ist das Problem. In der Gui der Influxdb wird standardmäßig die "aggregateWindow" Funktion ergänzt. Je nach ausgewählten Zeitraum werden dann z.B. Mittelwerte (mean) berechnet. Wenn du die Zeile entfernst und dafür

                                  |> last()
                                  

                                  einfügst, wird der letzte im "Range" Zeitraum selektierte Wert geliefert.

                                  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.

                                  L 1 Antwort Letzte Antwort
                                  0
                                  • Marc BergM Marc Berg

                                    @laser sagte in Grafana + Influx 2 + Flux + Bar Gauge:

                                    Diese Befehlsfolge wurde automatisch erstellt, ich habe da nichts dazu getan.

                                    Genau das ist das Problem. In der Gui der Influxdb wird standardmäßig die "aggregateWindow" Funktion ergänzt. Je nach ausgewählten Zeitraum werden dann z.B. Mittelwerte (mean) berechnet. Wenn du die Zeile entfernst und dafür

                                    |> last()
                                    

                                    einfügst, wird der letzte im "Range" Zeitraum selektierte Wert geliefert.

                                    L Offline
                                    L Offline
                                    Laser
                                    schrieb am zuletzt editiert von Laser
                                    #25

                                    @marc-berg so? (scheint den richtigen Wert anzuzeigen)
                                    from(bucket: "iobroker")
                                    |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
                                    |> filter(fn: (r) => r["_measurement"] == "sourceanalytix.0.alias__0__Panel power V-Ladegerät__PPV.currentYear.delivered.currentWeek.01_Monday")
                                    |> filter(fn: (r) => r["_field"] == "value")
                                    |> aggregateWindow(every: v.windowPeriod, fn: last, createEmpty: false)
                                    |> keep(columns: ["_value"])
                                    |> rename(columns: {_value:"Montag"})

                                    06fb7f93-8b2f-4f16-8a51-d9f5348e6663-image.png

                                    ? Marc BergM 2 Antworten Letzte Antwort
                                    0
                                    • L Laser

                                      @marc-berg so? (scheint den richtigen Wert anzuzeigen)
                                      from(bucket: "iobroker")
                                      |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
                                      |> filter(fn: (r) => r["_measurement"] == "sourceanalytix.0.alias__0__Panel power V-Ladegerät__PPV.currentYear.delivered.currentWeek.01_Monday")
                                      |> filter(fn: (r) => r["_field"] == "value")
                                      |> aggregateWindow(every: v.windowPeriod, fn: last, createEmpty: false)
                                      |> keep(columns: ["_value"])
                                      |> rename(columns: {_value:"Montag"})

                                      06fb7f93-8b2f-4f16-8a51-d9f5348e6663-image.png

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

                                      @laser sagte in Grafana + Influx 2 + Flux + Bar Gauge:

                                      from(bucket: "iobroker")
                                      |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
                                      |> filter(fn: (r) => r["_measurement"] == "sourceanalytix.0.alias__0__Panel power V-Ladegerät__PPV.currentYear.delivered.currentWeek.01_Monday")
                                      |> filter(fn: (r) => r["_field"] == "value")
                                      |> aggregateWindow(every: v.windowPeriod, fn: last, createEmpty: false)
                                      |> keep(columns: ["_value"])
                                      |> rename(columns: {_value:"Montag"})

                                      Moin,

                                      wie @Marc-Berg schon sagte, das aggregateWindow brauchst Du nicht, da Du ja nur den letzten Wert vom Tag brauchst.

                                      from(bucket: "iobroker")
                                      |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
                                      |> filter(fn: (r) => r["_measurement"] == "sourceanalytix.0.alias__0__Panel power V-Ladegerät__PPV.currentYear.delivered.currentWeek.01_Monday")
                                      |> filter(fn: (r) => r["_field"] == "value")
                                      |> keep(columns: ["_value"])
                                      |> rename(columns: {_value:"Montag"})
                                      |> last ()
                                      

                                      VG
                                      Bernd

                                      1 Antwort Letzte Antwort
                                      0
                                      • L Laser

                                        @marc-berg so? (scheint den richtigen Wert anzuzeigen)
                                        from(bucket: "iobroker")
                                        |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
                                        |> filter(fn: (r) => r["_measurement"] == "sourceanalytix.0.alias__0__Panel power V-Ladegerät__PPV.currentYear.delivered.currentWeek.01_Monday")
                                        |> filter(fn: (r) => r["_field"] == "value")
                                        |> aggregateWindow(every: v.windowPeriod, fn: last, createEmpty: false)
                                        |> keep(columns: ["_value"])
                                        |> rename(columns: {_value:"Montag"})

                                        06fb7f93-8b2f-4f16-8a51-d9f5348e6663-image.png

                                        Marc BergM Online
                                        Marc BergM Online
                                        Marc Berg
                                        Most Active
                                        schrieb am zuletzt editiert von
                                        #27

                                        @laser sagte in Grafana + Influx 2 + Flux + Bar Gauge:

                                        from(bucket: "iobroker")
                                        |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
                                        |> filter(fn: (r) => r["_measurement"] == "sourceanalytix.0.alias__0__Panel power V-Ladegerät__PPV.currentYear.delivered.currentWeek.01_Monday")
                                        |> filter(fn: (r) => r["_field"] == "value")
                                        |> aggregateWindow(every: v.windowPeriod, fn: last, createEmpty: false)
                                        |> keep(columns: ["_value"])
                                        |> rename(columns: {_value:"Montag"})

                                        das geht auch, aber

                                        from(bucket: "iobroker")
                                        |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
                                        |> filter(fn: (r) => r["_measurement"] == "sourceanalytix.0.alias__0__Panel power V-Ladegerät__PPV.currentYear.delivered.currentWeek.01_Monday")
                                        |> filter(fn: (r) => r["_field"] == "value")
                                        |> last()
                                        |> keep(columns: ["_value"])
                                        |> rename(columns: {_value:"Montag"})
                                        

                                        ist für dein Anwendungsfall die bessere Variante. "aggregateWindow" benutzt du vor allem, wenn du Zeiträume in Kurven darstellen willst, und beispielsweise den Maximal-/Mittel-/Mindest-Wert in einem 5m Minuten Intervall ermitteln möchtest.

                                        In dem hier geplanten Szenario benötigst du ja GENAU EINEN Wert. Und das ist hier mit der "last()" Funktion der letzte/jüngste Wert im "Range".

                                        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.

                                        L 1 Antwort Letzte Antwort
                                        0
                                        • Marc BergM Marc Berg

                                          @laser sagte in Grafana + Influx 2 + Flux + Bar Gauge:

                                          from(bucket: "iobroker")
                                          |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
                                          |> filter(fn: (r) => r["_measurement"] == "sourceanalytix.0.alias__0__Panel power V-Ladegerät__PPV.currentYear.delivered.currentWeek.01_Monday")
                                          |> filter(fn: (r) => r["_field"] == "value")
                                          |> aggregateWindow(every: v.windowPeriod, fn: last, createEmpty: false)
                                          |> keep(columns: ["_value"])
                                          |> rename(columns: {_value:"Montag"})

                                          das geht auch, aber

                                          from(bucket: "iobroker")
                                          |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
                                          |> filter(fn: (r) => r["_measurement"] == "sourceanalytix.0.alias__0__Panel power V-Ladegerät__PPV.currentYear.delivered.currentWeek.01_Monday")
                                          |> filter(fn: (r) => r["_field"] == "value")
                                          |> last()
                                          |> keep(columns: ["_value"])
                                          |> rename(columns: {_value:"Montag"})
                                          

                                          ist für dein Anwendungsfall die bessere Variante. "aggregateWindow" benutzt du vor allem, wenn du Zeiträume in Kurven darstellen willst, und beispielsweise den Maximal-/Mittel-/Mindest-Wert in einem 5m Minuten Intervall ermitteln möchtest.

                                          In dem hier geplanten Szenario benötigst du ja GENAU EINEN Wert. Und das ist hier mit der "last()" Funktion der letzte/jüngste Wert im "Range".

                                          L Offline
                                          L Offline
                                          Laser
                                          schrieb am zuletzt editiert von
                                          #28

                                          @marc-berg , @dp20eic
                                          Danke! So klappt das. Bin noch auf der Suche nach etwas, wo diese Dinge erklärt werden (Befehlsreferenz o.ä.)

                                          Marc BergM 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

                                          839

                                          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