NEWS
SQL.0 loggt Daten viel zu oft
-
@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.
-
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
-
"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.
-
> 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" ;-).
-
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
-
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
-
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
-
@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öschungNeu 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 @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öschungNeu 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?
@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!! -
@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!!@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. -
@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.@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!
-
@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!
-
@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!!@apollon77 sagte in SQL.0 loggt Daten viel zu oft:
der „Bug“ ist immer noch da der hier Zuviel loggt.
-
@apollon77 sagte in SQL.0 loggt Daten viel zu oft:
der „Bug“ ist immer noch da der hier Zuviel loggt.
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden