Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. SQL.0 loggt Daten viel zu oft

    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

    SQL.0 loggt Daten viel zu oft

    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      Sneak-L8 last edited by

      Hallo zusammen,

      habe gerade mal die letzten Werte eines States bzgl. Logging mit sql.0 angeschaut und festgestellt, dass etwa jede Sekunde ein Wert geschrieben wird. Da es sich um einen Stromzähler handelt (also das Zählwerk, nicht der aktuelle Verbrauch), reicht es mir, wenn der Wert ein paar Mal am Tag aufgezeichnet wird. Jede Sekunde ist völlig übertrieben und müllt die DB zu …

      Einstellungen sind:

      • aktiviert: ja
      • Änderungen aufzeichnen: nein
      • Intervall aufzeichnen: 21600 (alle 6 Stunden)
      • Speichern als: automatisch
      • Entprellzeit: 100
      • minimale Abweichung: 0
      • keine automatische Löschung

      Was mache ich da falsch?

      SQL: V1.9.2

      Admin: 3.5.10

      Braucht Ihr noch mehr Daten, um etas sagen zu können?

      Viele Grüße

      Sneak-L8

      1 Reply Last reply Reply Quote 0
      • paul53
        paul53 last edited by

        @Sneak-L8:

        reicht es mir, wenn der Wert ein paar Mal am Tag aufgezeichnet wird. `
        Änderungen aufzeichnen: ja

        Intervall aufzeichnen: 0

        Entprellzeit: 21600000 (6 Stunden)

        1 Reply Last reply Reply Quote 0
        • apollon77
          apollon77 last edited by

          @paul53: Nein!

          Entprellzeit ist ein "Delay bis der Wert stabil ist", sich also nicht mehr ändert. Mit der Einstellung wird nur geloggt wenn der Wert mehr als 6h unverändert bleibt. Wenn er öfter geändert wird würde es immer weiter auf "Stabilität" warten und somit nie loggen.

          Der Adapter hat faktisch kein "Den Wert nur alle 6h loggen" weil das komplett gegen den Sinn der Aufgabenstellung geht.

          Im Standard loggt der Adapter jeden Wert, man kann es ggf auf "mindestens X Abweichung" konfigurieren dann werden weniger Werte geloggt. Das wäre vllt für dich eine Option. z.B. nur Loggen wenn die Abweichung >10 (kWh) ist.

          "Intervall aufzeichnen" wird nur mit "Nur Änderungen loggen" beachtet und sorgt dafür das auch wenn es keine Änderung gibt der Wert mindestens alle X Zeit geloggt wird - das ist sinnvoll um die grafische Darstellung in Diagrammen zu optimieren.

          1 Reply Last reply Reply Quote 0
          • S
            Sneak-L8 last edited by

            Hallo Apollon77,

            danke für die Erläuterungen. Sie wegen sehr hilfreich.

            Wichtig ist der Punkt, dass das Intervall nur für „nur Änderungen aufzeichnen“ gilt.

            Wenn ich den Delta-Wert also eher hoch setze und die Änderungen aufzeichne, dann hab ich letztlich auch da Intervall, das ich will.

            Das Delta kann ich gleich noch dazu nutzen, größere Sprünge zusätzlich aufzuzeichnen.

            Viele Grüße

            Sneak-L8

            1 Reply Last reply Reply Quote 0
            • Hiltex
              Hiltex last edited by

              @apollon77:

              "Intervall aufzeichnen" wird nur mit "Nur Änderungen loggen" beachtet und sorgt dafür das auch wenn es keine Änderung gibt der Wert mindestens alle X Zeit geloggt wird - das ist sinnvoll um die grafische Darstellung in Diagrammen zu optimieren. `

              Schließt sich das nicht gegenseitig aus? Entweder ich logge in gleichen Zeitabständen, oder nur dann, wenn sich der Wert ändert.

              1 Reply Last reply Reply Quote 0
              • S
                Sneak-L8 last edited by

                > Schließt sich das nicht gegenseitig aus?
                Nein, ich denke, es ergänzt sich. Ich will nur die Änderungen, aber (aus welchem Grund auch immer) zumindest alle x Stunden/Minuten/Sekunden einen Wert geloggt haben.

                Logische "Oder"-Verknüpfung, nicht "und" ;-).

                1 Reply Last reply Reply Quote 0
                • apollon77
                  apollon77 last edited by

                  Korrekt. Die Bezeichnung müsste anstelle "Intervall aufzeichen" eher "… aber minderstens loggen alle" heissen 🙂

                  Das ist dafür hut das man bei Werten die sich selten ändern sonst nahezu keine gescheite grafische Darstellung bekommt. Wenn sich der Wert im graphen Zeitraum nicht geändert hat ist nichts da was man anzeigen könnte

                  1 Reply Last reply Reply Quote 0
                  • Hiltex
                    Hiltex last edited by

                    Das bedeutet ja, dass garnichts aufgezeichnet wird, wenn das Interval 0 ist und zusätzlich der Haken bei „Änderungen aufzeichnen“ nicht gesetzt ist?

                    Das finde ich irgendwie komisch.

                    1 Reply Last reply Reply Quote 0
                    • apollon77
                      apollon77 last edited by

                      Wenn der Haken bei „ nur Änderungen loggen“ nicht gesetzt ist wird jeder Wert geloggt.

                      Gesendet vom Handy …

                      1 Reply Last reply Reply Quote 0
                      • Hiltex
                        Hiltex last edited by

                        Also dann bei jeder Aktualisierung des Datenpunktes?

                        1 Reply Last reply Reply Quote 0
                        • apollon77
                          apollon77 last edited by

                          Korrekt. Egal ob wert geändert oder gleich.

                          Gesendet vom Handy …

                          1 Reply Last reply Reply Quote 0
                          • Hiltex
                            Hiltex last edited by

                            Danke für die Aufklärung.

                            1 Reply Last reply Reply Quote 0
                            • H
                              Habedere last edited by

                              Servus zusammen,

                              da mich das Thema SQL-Logging auch gerade beschäftigt - kurz eine Frage.

                              Fragt der SQL-Adapter einen Temperatur/Humidity Sensor dann auch viel öfter ab

                              als bei keiner Aufzeichnung?

                              Da müsste ja die Batterie extrem darunter leiden…

                              mfg

                              1 Reply Last reply Reply Quote 0
                              • S
                                Sneak-L8 last edited by

                                Der SQL-Adapter fragt gar nichts ab. Er hat nur den state abonniert und bekommt mit, wenn dort Werte (auch gleiche) geschrieben werden.

                                Die Werte werden nur vom Temperatur-Adapter gesetzt.

                                1 Reply Last reply Reply Quote 0
                                • H
                                  Habedere last edited by

                                  @Sneak-L8:

                                  Der SQL-Adapter fragt gar nichts ab. Er hat nur den state abonniert und bekommt mit, wenn dort Werte (auch gleiche) geschrieben werden.

                                  Die Werte werden nur vom Temperatur-Adapter gesetzt. `
                                  Somit bleibt die Lauftzeit der Sensoren also gleich - egal ob geloggt oder nicht.

                                  Danke für die Aufklärung

                                  1 Reply Last reply Reply Quote 0
                                  • S
                                    Sneak-L8 last edited by Sneak-L8

                                    @apollon77 @paul53 Ich muss dieses alte Thema wieder öffnen. Habe gerade festgestellt, dass sql.0 mal wieder jede Sekunde loggt anstelle nur alle Minute oder seltener.
                                    Die Daten komemn von einem EnergyMeter, das seine Daten im Sekundentakt sendet.
                                    Eingestellt habe ich:

                                    aktiviert: ja
                                    Änderungen aufzeichnen: ja
                                    trotzdem gleiche Werte aufzeichnen: 0
                                    Speichern als: automatisch
                                    Entprellzeit: 60000 (alle Minute)
                                    minimale Differenz zum letzten Wert: 150
                                    keine automatische Löschung
                                    

                                    Neu habe ich aktiviert, keine Null- und 0-Werte zu loggen.

                                    In den Verlaufsdaten sehe ich aber wie gesagt ca. jede Sekunde einen Eintrag mit Werten:

                                    • 16:05:36 => 3482
                                    • 16:05:35 => 3491,4
                                    • 16:05:34 => 3484,60000000004
                                    • 16:05:33 => 3483,4
                                    • 16:05:32 => 3489,8
                                    • 16:05:31 => 3487,10000000004
                                    • 16:05:30 => 3473,4

                                    Das sind ja deutlich geringere Abweichungen als 150 (W). Mache ich etwas falsch?

                                    Der Datenpunkt ist definiert als

                                    • Zustandstyp: Zahl
                                    • Rolle: value

                                    Im JSON ist es noch mal schön zusammengrfasst:

                                    {
                                      "type": "state",
                                      "role": "value",
                                      "common": {
                                        "name": "psurplus",
                                        "type": "number",
                                        "role": "value",
                                        "custom": {
                                          "sql.0": {
                                            "enabled": true,
                                            "changesOnly": true,
                                            "debounce": "60000",
                                            "maxLength": 10,
                                            "retention": 0,
                                            "changesRelogInterval": 0,
                                            "changesMinDelta": 150,
                                            "storageType": "",
                                            "aliasId": "",
                                            "counter": false,
                                            "ignoreZero": true,
                                            "ignoreBelowZero": false
                                          }
                                        }
                                      },
                                      "native": {},
                                      "_id": "sma-em.0.1901706890.psurplus",
                                      "acl": {
                                        "object": 1636,
                                        "owner": "system.user.admin",
                                        "ownerGroup": "system.group.administrator",
                                        "state": 1636
                                      },
                                      "from": "system.adapter.admin.0",
                                      "user": "system.user.admin",
                                      "ts": 1647874776659
                                    }
                                    

                                    Vielleicht hab ich auch einfach nur einen Denkfehler?

                                    apollon77 1 Reply Last reply Reply Quote 0
                                    • apollon77
                                      apollon77 @Sneak-L8 last edited by

                                      @sneak-l8 entprellzeit ist (und war es nicht nie!!!!) der logging Abstand!!!!!

                                      Ja der „Bug“ ist immer noch da der hier Zuviel loggt. Ansonsten würdest du mit deiner Einstellung wohl nie auch nur einen Wert geloggt bekommen.
                                      Entprellzeit bedeutet: logge nur wenn wert für diese Zeitspanne stabil - also gleich- ist!!

                                      S Homoran 2 Replies Last reply Reply Quote 0
                                      • S
                                        Sneak-L8 @apollon77 last edited by

                                        @apollon77 Danke für die Info. Dann setze ich die Entprellzeit wieder nach unten (die Option, frühesten nach x Sekunden wieder zuloggen fände ich aber auch hilfreich 🙂 ).
                                        Und dass das zuviel-Loggen noch ein Bug ist, beruhigt mich dahingehend, dass ich doch nichts falsch eingestellt hab (von der Entprellzeit abgesehen 😉
                                        Bug ist aber in Anführungszeichen. Hab ich vielleicht dochwas falsch verstanden?
                                        Denn durch minDelta = 150 sollte ja eigentlich nur bei großen Änderungen was geloggt werden.

                                        Homoran 1 Reply Last reply Reply Quote 0
                                        • Homoran
                                          Homoran Global Moderator Administrators @Sneak-L8 last edited by

                                          @sneak-l8 sagte in SQL.0 loggt Daten viel zu oft:

                                          Denn durch minDelta = 150 sollte ja eigentlich nur bei großen Änderungen was geloggt werden.

                                          ja!

                                          S 1 Reply Last reply Reply Quote 0
                                          • S
                                            Sneak-L8 @Homoran last edited by

                                            @homoran aber warum werden die Daten dann alle paar Sekunden geschrieben, wenn sich die werte nur um ein paar Watt verändert haben?

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            719
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            8
                                            42
                                            2013
                                            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