Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Off Topic
    4. [Gelöst ]measurements definieren für influxdb

    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

    [Gelöst ]measurements definieren für influxdb

    This topic has been deleted. Only users with topic management privileges can see it.
    • C
      cksit @Marc Berg last edited by cksit

      @marc-berg
      das mit dem import "strings" habe ich natürlich übersehen gehabt 😕

      Jetzt macht er wenigstens etwas, aber leider ignoriert er einige Measurements. Ich habe mal in beiden buckets nach "battery" gesucht und statt 8 Measurements habe ich nur noch 5...
      Am Namen sieht man, dass sie alle mit mqtt anfangen.

      a127d739-8539-4f7b-882f-819fbb7798bf-grafik.png
      4b82ad3c-400f-42a6-af05-55d8db1cdfca-grafik.png

      Bezüglich:
      |> filter(fn: (r) => r["_measurement"] =~ /mqtt/)
      --> unsupported input type for mean aggregate: string

      Da hatte ich die Systematik falsch verstanden. Ich dachte ich könnte bei den measurements schon nach string filtern.
      so richtig habe ich noch nicht verstanden an was ich es festmachen kann...

      Marc Berg 1 Reply Last reply Reply Quote 0
      • Marc Berg
        Marc Berg Most Active last edited by

        @cksit
        wie sieht die Abfrage jetzt konkret aus?

        C 1 Reply Last reply Reply Quote 0
        • C
          cksit @Marc Berg last edited by cksit

          @marc-berg

          223f1ca6-a5ed-45df-9934-b1b7f0d85aa6-grafik.png
          import"strings"
          from(bucket: "iobroker")
          |> range(start: -1h)
          |> filter(fn: (r) => strings.containsStr(v: r._measurement, substr: "mqtt") == true)
          |> filter(fn: (r) => r["_field"] == "value")
          |> aggregateWindow(
          every: 1m,
          fn: mean,
          createEmpty: false
          )
          |> to(
          bucket: "spielwiese",
          )

          ich habe sie erstmal auf -1h gesetzt um schnell was sehen zu können.

          1 Reply Last reply Reply Quote 0
          • Marc Berg
            Marc Berg Most Active @cksit last edited by

            @cksit sagte in measurements definieren für influxdb:

            das mit dem import "strings" habe ich natürlich übersehen gehabt 😕

            Jetzt macht er wenigstens etwas, aber leider ignoriert er einige Measurements. Ich habe mal in beiden buckets nach "battery" gesucht und statt 8 Measurements habe ich nur noch 5...

            Ich kann mir nur vorstellen, dass die Datentypen bei den fehlenden Measurements nicht passen. Mir ist jetzt kein Befehl bekannt, mit dem man sich die Typen "am Stück" anzeigen lassen kann. Im Data Explorer kann man sich aber die fehlenden Measurements anzeigen lassen und den Datentyp checken.


            bdd391ee-b10d-4d30-8838-f0a5be3d6c42-grafik.png

            C 1 Reply Last reply Reply Quote 0
            • C
              cksit @Marc Berg last edited by

              @marc-berg
              Nicht übertragen:
              cddf6a8c-072a-4e93-a1e7-935ebca8787a-grafik.png

              Übertragen:
              e2ab09ba-26e5-4cdc-a83a-c978a147727e-grafik.png

              Sehen soweit gleich aus...

              Noch eine Idee wo man suchen kann?

              Vielen Dank!

              Marc Berg 1 Reply Last reply Reply Quote 0
              • Marc Berg
                Marc Berg Most Active @cksit last edited by Marc Berg

                @cksit sagte in measurements definieren für influxdb:

                Übertragen:
                ![e2ab09ba-26e5-4cdc-a83a-c978a147727e-grafik.png](/assets/uploads/files aus...

                Noch eine Idee wo man suchen kann?

                Ne, jetzt sind mir die Ideen ausgegangen, bei mir klappt das ohne Verluste. Welche InfluxDB Version setzt Du ein, und welches Betriebssystem (32bit/64bit)?

                Ansonsten würde ich mich jetzt Stück für Stück an das Problem ranrobben. Also zunächst mal nur eines der Measurement selektieren, welches Probleme macht. Werden die Daten dann übertragen? Was passiert, wenn man das "to(Bucket ...)" weg lässt, kommen Ergebnisse? Was passiert, wenn man nur Zeit-Teilbereiche selektiert?

                Und wenn das alles nichts hilft, das Problem bei https://community.influxdata.com vortragen.

                Edit: Was sagt eigentlich das Monitoring-Bucket, gibt es dort Meldungen?


                2420df47-0fa8-4092-a938-58108a2b151d-grafik.png

                C 1 Reply Last reply Reply Quote 1
                • K
                  Kapitaen31 @cksit last edited by Kapitaen31

                  @cksit said in measurements definieren für influxdb:

                  Ich habe u.a. BMS Werte, die über die Objekte in influxdb geschrieben werden. Leider wird dabei für jedes Objekt ein eigenes Measurement angelegt.
                  Kann man das irgendwie abändern, sodass man z.B. nur ein Measurement für BMS, ein weiteres für die Heizung etc. hat?

                  Hallo,

                  ich habe auch diese Gedanken und würde gerne auch nur ein Measurement haben und dafür mit Tags zu "rangieren"...
                  Hast Du dazu noch etwas neues gefunden?

                  Ducis hat in einem anderem Post dieses Blockly veröffentlicht:
                  @ducis sagte in InfluxDB mit eigenen Tags und Measurements schreiben:

                  Unbenannt.JPG

                  Ich könnte mir vorstellen, das mein PI schon ganz schön belastet wird, wenn er die Daten vom Stromzähler über dieses Blockly schreibt...

                  Gruß
                  Andreas

                  1 Reply Last reply Reply Quote 0
                  • C
                    cksit @Marc Berg last edited by

                    @marc-berg

                    Habe es mittlerweile hinbekommen.
                    Leider war es tatsächlich so, dass ich in einem Measurement Strings hatte. Manchmal habe ich daraufhin die Fehlermeldung erhalten und manchmal eben nicht....
                    Habe dann den Filter auf die Measurements gesetzt wo ich genau weiß, dass nur Zahlen enthalten sind. Damit geht es.

                    Muss jetzt also nach und nach per query die Daten in ein neues Bucket umrechnen und sobald das fertig ist wird die Aufbewahrungszeit auf 1 Monat gesetzt.
                    Über die Tasks können dann die einzelnen Measurements wöchentlich aufgeräumt werden.

                    Ist keine schöne Lösung, aber sie funktioniert.

                    @Kapitaen31
                    Leider habe ich nichts dazu gefunden. Über den Weg der Skripte habe ich auch schon nachgedacht, aber die wären in meinem Fall schon sehr groß und würden das System zu arg belasten.

                    Meine Idee ist es daher eher, dass ich später mal einzelne Werte weglasse, sobald das System einwandfrei läuft... 🙂

                    Marc Berg 1 Reply Last reply Reply Quote 0
                    • Marc Berg
                      Marc Berg Most Active @cksit last edited by

                      @cksit sagte in measurements definieren für influxdb:

                      Leider war es tatsächlich so, dass ich in einem Measurement Strings hatte. Manchmal habe ich daraufhin die Fehlermeldung erhalten und manchmal eben nicht....
                      Habe dann den Filter auf die Measurements gesetzt wo ich genau weiß, dass nur Zahlen enthalten sind. Damit geht es.

                      Darum hatte ich auch den Hinweis mit dem Filter auf "float" gegeben. Damit wäre es vielleicht einfacher gegangen:

                      import "types"
                      ...
                      |> filter(fn: (r) => types.isType(v: r._value, type: "float"))
                      ...
                      

                      Aber wenn Du jetzt einen Weg gefunden hast, ist ja alles gut. Das mit dem Bereinigen/Umrechnen ist natürlich nervig.

                      C 1 Reply Last reply Reply Quote 1
                      • C
                        cksit @Marc Berg last edited by

                        @marc-berg

                        Jetzt wo wir drüber reden...😂
                        Ja das wäre sinnvoller gewesen. Aber gut man hat gerade ne steile Lernkurve mit dem System.

                        Vielen Dank für die Unterstützung!

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

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        796
                        Online

                        31.7k
                        Users

                        79.8k
                        Topics

                        1.3m
                        Posts

                        3
                        13
                        741
                        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