NEWS
[gelöst] SQL Adapter zeichnet bei Neustart nicht auf
-
Hi zusammen und noch ein gutes neues Jahr!
Ich habe seit ein paar Wochen ärgerliche Schwierigkeiten mit der Aufzeichnung verschiedener Datenpunkte und komme dem Problem leider nicht auf die Spur.
Folgende Visualisierungen zeigen das Verhalten:
Hier ist z.B. unterbrochen:- die Reichweite und Batteriekapazität des ID.4
- Leistung der PV
- Kapazität der Hausbatterie
Nicht unterbrochen sind
- die Leistungswerte der Wallbox (3 Phasen separat oder Summe, alle 0).
Weiteres Beispiel Temperaturwerte:
Hier sind alle Werte unterbrochen.Wie kommt die Unterbrechung zustande?
- Alle entsprechenden Datenpunkte werden über den SQL-Adapter aufgezeichnet.
- Einstellung wie folgt:
Wird nun der SQL-Adapter neu gestartet (durch Neustart des ioBroker Containers oder durch Neustart der SQL-Adapter-Instanz) erfolgt bei manchen Datenpunkten die Aufzeichnung kontinuierlich (siehe Leistung Wallbox), bei anderen hingegen wird die Aufzeichnung nicht wieder aufgenommen.
Erst wenn ich die Aufzeichnung gleicher Werte von z.B. eingestellten fünf Minuten auf eine Minute senke, speichere und wieder auf fünf Minuten zurückstelle und speichere wird die Aufzeichnung wieder aufgenommen. Das ist so auf Dauer angesichts der Menge der Datenpunkte natürlich völlig inpraktikabel.
Der SQL-Adapter bekommt die Werte der fraglichen Datenpunkte durchaus geliefert - zeichnet sie aber nicht auf, siehe Log-Beispiel:
States system redis pmessage io.messagebox.system.adapter.sql.0/io.messagebox.system.adapter.sql.0:{"command":"getHistory","message":{"id":"hm-rpc.0.REQ1182015.4.ACTUAL_TEMPERATURE","options":{"start":1641372210147,"end":1641458610147,"aggregate":"minmax","count":"300","instance":"sql.0","sessionId":2398,"user":"system.user.admin"}},"from":"system.adapter.web.0","callback":{"message":{"id":"hm-rpc.0.REQ1182015.4.ACTUAL_TEMPERATURE","options":{"start":1641372210147,"end":1641458610147,"aggregate":"minmax","count":"300","instance":"sql.0","sessionId":2398,"user":"system.user.admin"}},"id":2553,"ack":false,"time":1641458666691},"_id":70724229}
Ich verwende ioBroker 3.3.21 (buanet Image v6.0.0/RAM: 7.6 GB NODE.JS: V14.18.2 NPM: 6.14.15) auf einem QNAP NAS in der Container Station mit MariaDB 5.5.68. Alle ioBroker-Adapter sind auf dem aktuellen Stand.
Habt Ihr irgendwelche Tipps für mich? Ich habe die Ursache leider noch nicht durchschaut.
Konfigurationsfehler oder Bug?
Gruß,
Oli -
@osu Ich kann dieses Verhalten bei mir nicht beobachten, habe jedoch auch erst wenige Datenpunkte, die aufgezeichnet werden.
Hast Du noch weitere Datenpunkte, die aufgezeichnet werden?
Wenn ja, ist dieses Verhalten auch dort zu beobachten?Hintergrund meiner Fragen ist, dass erst einmal herauszufinden ist, wo die Ursache ist.
Wenn Du nur durch Ändern der Intervalle die Aufzeichnung wieder startest, hast Du zwar im SQL-Adapter etwas gemacht, wenn es aber nur mit den Daten vom ID4 nicht funktioniert, war der SQL-Adapter vielleicht "nur" der Trigger, der den ID4-Adapter wieder anschmeisst. -
@andreas-5
Es sind > 40 verschiedene Datenpunkte, die protokolliert werden. Ich bin gerade dabei, eine Übersicht zusammenzustellen, welche Datenpunkte von dem Problem häufig bis immer betroffen sind.Auch wenn nicht aufgezeichnet wird, ändern sich aber die Werte (zudem ist die Einstellung ja ohnehin so getroffen, dass nach z.B. 5 Minuten auf jeden Fall aufgezeichnet wird).
Am einfachsten ist das Verhalten an der Energiemessung von Schaltsteckdosen oder Modbuswerten der Photovoltaik zu sehen - hier liegen laufend geänderte Werte an.
Gruß,
Oli -
Hier mal die Übersicht der Datenpunkte bei denen das Problem beim letzten Neustart des SQL-Adapters NICHT auftrat:
Und hier die Übersicht der Datenpunkte bei denen das Problem beim letzten Neustart des SQL-Adapters AUFTRAT:
Hier zwei Gegenüberstellungen von funktionierenden Datenpunkten (links) und nicht funktionierenden Datenpunkten (rechts):
Ich sehe da keinen Unterschied, der das Verhalten erklären könnte.
Ich denke ich werde auf GitHub mal ein Issue eröffnen, es sei denn hier hat noch jemand eine Idee.
Gruß,
Oli -
@osu sagte in SQL Adapter zeichnet bei Neustart Datenpunkte nicht auf:
Wird nun der SQL-Adapter neu gestartet (durch Neustart des ioBroker Containers oder durch Neustart der SQL-Adapter-Instanz) erfolgt bei manchen Datenpunkten die Aufzeichnung kontinuierlich (siehe Leistung Wallbox), bei anderen hingegen wird die Aufzeichnung nicht wieder aufgenommen.
Sicher?
wenn du über die anscheinend durchgehend geloggten Daten gehst, befinden sich dann dort auch weitere Messpunkte oder ist die Linie einfach nur verbunden.Im letztenFall solltest du bei Flot mal die Behandlung von Null-Daten überprüfen.
-
@homoran
Ich kann die fehlende Werteaufzeichnung auch anhand der Verlaufsdaten in den SQL-Einstellungen sehen:
Hier werden die Werte kontinuierlich aufgezeichnet:
GitHub Issue: https://github.com/ioBroker/ioBroker.sql/issues/216
Gruß,
Oli -
@apollon77 hat mich im GitHub Issue dankenswerterweise auf die Lösung gebracht:
Ich hatte im Dezember ein neues buanet/ioBroker Docker Image in Betrieb genommen.
Gefehlt hat offenbar ein
iobroker setup firstNun scheint's wie gewohnt zu klappen.
Dank an @apollon77 !
Gruß,
Oli