NEWS
[Aufruf] Tests history/sql/influxdb neue Versionen!! Alias-Logging
-
Alias id gibts auf der einstellungsseite von den datenpunkten. (Unter Objekte) Es ist eine Zeile dazugekommen mit dem Textfeld.. `
Bin zu doof. Auf einer dieser Seiten?
1146_screenshot__2_.png
1146_screenshot__3_.png -
Ist die Alias-ID auf 10 Zeichen begrenzt ? `
Wenn dann soll das so nicht sein checke ich gleich. -
@lobomau: eigentlich auf der zweiten. Fehlt bei dir aber. Bitte mal Shift Reload. Bzw nochmal ein „iobroker upload sql“
-
@lobomau: eigentlich auf der zweiten. Fehlt bei dir aber. Bitte mal Shift Reload. Bzw nochmal ein „iobroker upload sql“ `
OK. Mit dem Upload hat's geklappt. -
1.8.0 installiert.
log zeigt:
sql.0 2018-06-20 20:59:38.693 info starting. Version 1.8.0 in C:/ioBroker/node_modules/iobroker.sql, node: v6.9.0 host.Asus-Buero 2018-06-20 20:59:37.637 info instance system.adapter.sql.0 started with pid 9600 host.Asus-Buero 2018-06-20 20:59:34.618 info instance system.adapter.sql.0 terminated with code null ()
Instanz wird grün.
1.9.0 von git installiert.
log zeigt:
host.Asus-Buero 2018-06-20 21:04:23.581 info Restart adapter system.adapter.sql.0 because enabled host.Asus-Buero 2018-06-20 21:04:23.581 error instance system.adapter.sql.0 terminated with code 0 (OK) Caught 2018-06-20 21:04:23.580 error by controller[1]: at Manager.ondata (C:\ioBroker\node_modules\iobroker.js-controller\node_modules\socket.io-client\lib\manager.js:322:16) Caught 2018-06-20 21:04:23.580 error by controller[1]: at Decoder.add (C:\ioBroker\node_modules\iobroker.js-controller\node_modules\socket.io-parser\index.js:246:12) Caught 2018-06-20 21:04:23.580 error by controller[1]: at Decoder.Emitter.emit (C:\ioBroker\node_modules\iobroker.js-controller\node_modules\component-emitter\index.js:134:20) Caught 2018-06-20 21:04:23.580 error by controller[1]: at Decoder. <anonymous>(C:\ioBroker\node_modules\iobroker.js-controller\node_modules\component-bind\index.js:21:15) Caught 2018-06-20 21:04:23.580 error by controller[1]: at Manager.ondecoded (C:\ioBroker\node_modules\iobroker.js-controller\node_modules\socket.io-client\lib\manager.js:332:8) Caught 2018-06-20 21:04:23.580 error by controller[1]: at Manager.Emitter.emit (C:\ioBroker\node_modules\iobroker.js-controller\node_modules\socket.io-client\node_modules\component-emitter\index.js:133:20) Caught 2018-06-20 21:04:23.580 error by controller[1]: at Manager. <anonymous>(C:\ioBroker\node_modules\iobroker.js-controller\node_modules\component-bind\index.js:21:15) Caught 2018-06-20 21:04:23.580 error by controller[1]: at Socket.onpacket (C:\ioBroker\node_modules\iobroker.js-controller\node_modules\socket.io-client\lib\socket.js:236:12) Caught 2018-06-20 21:04:23.580 error by controller[1]: at Socket.onack (C:\ioBroker\node_modules\iobroker.js-controller\node_modules\socket.io-client\lib\socket.js:312:9) Caught 2018-06-20 21:04:23.580 error by controller[1]: at Socket. <anonymous>(C:\ioBroker\node_modules\iobroker.sql\main.js:963:29) Caught 2018-06-20 21:04:23.580 error by controller[1]: ReferenceError: history is not defined Caught 2018-06-20 21:04:23.580 error by controller[0]: Cannot find module 'pg-native' sql.0 2018-06-20 21:04:23.563 info terminating sql.0 2018-06-20 21:04:22.951 warn Exception: ReferenceError: history is not defined sql.0 2018-06-20 21:04:22.943 error at Manager.ondata (C:\ioBroker\node_modules\iobroker.js-controller\node_modules\socket.io-client\lib\manager.js:322:16) sql.0 2018-06-20 21:04:22.943 error at Decoder.add (C:\ioBroker\node_modules\iobroker.js-controller\node_modules\socket.io-parser\index.js:246:12) sql.0 2018-06-20 21:04:22.943 error at Decoder.Emitter.emit (C:\ioBroker\node_modules\iobroker.js-controller\node_modules\component-emitter\index.js:134:20) sql.0 2018-06-20 21:04:22.943 error at Decoder. <anonymous>(C:\ioBroker\node_modules\iobroker.js-controller\node_modules\component-bind\index.js:21:15) sql.0 2018-06-20 21:04:22.943 error at Manager.ondecoded (C:\ioBroker\node_modules\iobroker.js-controller\node_modules\socket.io-client\lib\manager.js:332:8) sql.0 2018-06-20 21:04:22.943 error at Manager.Emitter.emit (C:\ioBroker\node_modules\iobroker.js-controller\node_modules\socket.io-client\node_modules\component-emitter\index.js:133:20) sql.0 2018-06-20 21:04:22.943 error at Manager. <anonymous>(C:\ioBroker\node_modules\iobroker.js-controller\node_modules\component-bind\index.js:21:15) sql.0 2018-06-20 21:04:22.943 error at Socket.onpacket (C:\ioBroker\node_modules\iobroker.js-controller\node_modules\socket.io-client\lib\socket.js:236:12) sql.0 2018-06-20 21:04:22.943 error at Socket.onack (C:\ioBroker\node_modules\iobroker.js-controller\node_modules\socket.io-client\lib\socket.js:312:9) sql.0 2018-06-20 21:04:22.943 error at Socket. <anonymous>(C:\ioBroker\node_modules\iobroker.sql\main.js:963:29) sql.0 2018-06-20 21:04:22.943 error ReferenceError: history is not defined sql.0 2018-06-20 21:04:22.943 error uncaught exception: history is not defined sql.0 2018-06-20 21:04:22.940 info enabled logging of javascript.0.Status.Heizoel.aktuell, Alias=false, 1 points now activated sql.0 2018-06-20 21:04:22.915 info Connected to sqlite sql.0 2018-06-20 21:04:22.887 info starting. Version 1.9.0 in C:/ioBroker/node_modules/iobroker.sql, node: v6.9.0</anonymous></anonymous></anonymous></anonymous></anonymous></anonymous>
Adapter wird kurz grün; dann aber gleich wieder rot.
Habe nun auch history von git aktualisiert.
sql bleibt aber rot.
-
Dann hast du bug gefundenen fix kommt gleich. Super, danke
-
Is ja n' Ding.
Ich dachte es liegt wieder an meiner Kiste.
-
Ne Du hast wirklich einen Fehler gefunden der bei influxdb und sql reingerutscht war. Die ganzen automatisierten tests sind nie auf den gestossen … congratulation!
Alle 3 Adapter haben jetzt eine ".1" Version auf Github. Die Maximale Länge der Alias-ID sollte jetzt bei 255 zeichen sein
Wer will nochmal wer hat noch nicht ... (genug) ...
-
Die Maximale Länge der Alias-ID sollte jetzt bei 255 zeichen sein
Ja, passt. Das ging ja fix
-
1.91. installiert.
Instanz wird grün.
-
Gleiches passiert jetzt in einigen Adaptern in Vorbereitung auf js-controller 1.4.2 bzw. 1.5.0 wo bestimmte Zeichen nicht mehr erlaubt sind für State-IDs. Hier ändern sich auch die IDs - allen voran im Smartmeter-Adapter, wo eine Stromverbrauchs-Historie komplett cool ist.
Aber das ist jetzt simpel. Einfach beim alten Objekt das logging deaktivieren, beim neuen aktivieren mit den gleichen Einstellungen UND die alte State-ID einfach als "Alias-ID" bei der Konfiguration des Datenpunkts angeben. Dann landen alle Daten in der "alten" ID was das Logging angeht. `
zu smartmeter:
Kann man dann die alten states unter Objekte dann löschen.
Die Werte müsste doch in der Datei sqlite noch gespeichert sein.
Richtig ?
andere Möglichkeit?
Gibt es ein Tool in dem man die Datenbank sqlite bearbeiten kann.
Also die alten gespeicherten Daten dem neuen Punkt zuordnen.
Man würde dann den alias sparen.
mfg
-
1.) Ja, kannst die alten IDs löschen und bei den neuen den namen des Alten als Alias hinterlegen. Das war die Idee.
2.) Es gibt viele SQLite Editoren. Was die so können keine Ahnung. "Google is your friend"
-
Vielleicht mache ich was falsch oder ich habe es noch nicht verstanden.
Also, ich habe bei einem HM-IP Lichtschalter bei der Leistungsmessung eine Alias-ID eingetragen "Gartenpumpe.power".
Ab dem Abspeichern der Alias-ID sind die bisher geloggten Daten weg und fangen ab dem Zeitpunkt des Abspeicherns an zu loggen.
Aber die ID bleibt weiterhin die gleiche. Nun weiß ich nicht was ich mit der Alias-ID mache bzw. wo ich sie finde.
Ich dachte es wäre alles wie vorher nur quasi doppelt durch einen neuen zusätzlichen Namen, der Alias-ID.
-
Ich dachte es wäre alles wie vorher nur quasi doppelt durch einen neuen zusätzlichen Namen, der Alias-ID.
Nein, es wird nicht doppelt gespeichert. Man kann lediglich das Speichern mit einer "alten" ID und einem neuen Datenpunkt fortsetzen.
@apollon77 sagte:
beim alten Objekt das logging deaktivieren, beim neuen aktivieren mit den gleichen Einstellungen UND die alte State-ID einfach als "Alias-ID" bei der Konfiguration des Datenpunkts angeben. Dann landen alle Daten in der "alten" ID was das Logging angeht.
-
Paul53 hat es richtig verstanden!
Und ja, wenn Du einen neuen Alias-ID-namen eingibst den es bisher nicht gab dann wird alles ab dem zeitpunkt dahin geloggt und auch Abfragen auf den echten Datenpunkt werden dahin "umgebogen".
-
Bei mir dauert es noch mit dem Verstehen…
Also, ich habe dann bei einem Gerät die Alias-ID wieder gelöscht. Im Flot taucht der Graph vor dem Zeitpunkt des Setzens des Alias-ID aber nicht wieder auf. Bug oder feature?
Dann eine Beobachtung: ich habe mal dem Alias-ID den gleichen Namen gegeben wie die ID, in dem konkreten Fall "landroid-s.0.mower.batteryCharging". Dann kommt erstmal eine Zeitlang Fehlermeldung, wahrscheinlich zu Recht, und Flot lädt den Graph nicht. Nach einer Zeit ist der reload wohl abgeschlossen und alles läuft wieder vorher. Läuft das alles wie gedacht?
sql.0 2018-06-21 09:16:08.557 error Please wait till next data record is logged and reload. sql.0 2018-06-21 09:16:08.557 warn For getHistory for id landroid-s.0.mower.batteryCharging: Type empty. Need to write data first. Index = 284 sql.0 2018-06-21 09:15:35.840 error Please wait till next data record is logged and reload. sql.0 2018-06-21 09:15:35.839 warn For getHistory for id landroid-s.0.mower.batteryCharging: Type empty. Need to write data first. Index = 284 sql.0 2018-06-21 09:14:35.040 error Please wait till next data record is logged and reload. sql.0 2018-06-21 09:14:35.039 warn For getHistory for id landroid-s.0.mower.batteryCharging: Type empty. Need to write data first. Index = 284 sql.0 2018-06-21 09:14:04.339 error Please wait till next data record is logged and reload. sql.0 2018-06-21 09:14:04.338 warn For getHistory for id landroid-s.0.mower.batteryCharging: Type empty. Need to write data first. Index = 284
-
Ohne Alias-ID mit SQL Server läuft es wie vorher.
-
Bei mir dauert es noch mit dem Verstehen…
Also, ich habe dann bei einem Gerät die Alias-ID wieder gelöscht. Im Flot taucht der Graph vor dem Zeitpunkt des Setzens des Alias-ID aber nicht wieder auf. Bug oder feature? `
Hm … good point ... neustart des Adapters sollte das fixen .. Muss mal nachdenken dazu.
Dann eine Beobachtung: ich habe mal dem Alias-ID den gleichen Namen gegeben wie die ID, in dem konkreten Fall "landroid-s.0.mower.batteryCharging". Dann kommt erstmal eine Zeitlang Fehlermeldung, wahrscheinlich zu Recht, und Flot lädt den Graph nicht. Nach einer Zeit ist der reload wohl abgeschlossen und alles läuft wieder vorher. Läuft das alles wie gedacht?
sql.0 2018-06-21 09:16:08.557 error Please wait till next data record is logged and reload. sql.0 2018-06-21 09:16:08.557 warn For getHistory for id landroid-s.0.mower.batteryCharging: Type empty. Need to write data first. Index = 284 sql.0 2018-06-21 09:15:35.840 error Please wait till next data record is logged and reload. sql.0 2018-06-21 09:15:35.839 warn For getHistory for id landroid-s.0.mower.batteryCharging: Type empty. Need to write data first. Index = 284 sql.0 2018-06-21 09:14:35.040 error Please wait till next data record is logged and reload. sql.0 2018-06-21 09:14:35.039 warn For getHistory for id landroid-s.0.mower.batteryCharging: Type empty. Need to write data first. Index = 284 sql.0 2018-06-21 09:14:04.339 error Please wait till next data record is logged and reload. sql.0 2018-06-21 09:14:04.338 warn For getHistory for id landroid-s.0.mower.batteryCharging: Type empty. Need to write data first. Index = 284 ```` `
Muss ich auch anschauen.
-
Bei mir dauert es noch mit dem Verstehen…
Also, ich habe dann bei einem Gerät die Alias-ID wieder gelöscht. Im Flot taucht der Graph vor dem Zeitpunkt des Setzens des Alias-ID aber nicht wieder auf. Bug oder feature? `
Hm … good point ... neustart des Adapters sollte das fixen .. Muss mal nachdenken dazu. `
Stimmt. SQL neugestartet. Datenpunkte wieder da. -
Alle Adapter haben jetzt eine .2 am Ende als Versionsnummer auf GitHub.
Jetzt sollte auch das entfernen und Ändern von Alias-IDs problemlos funktionieren.
@lobomau: Bitte deine Fälle nochmal re-testen.
Vielen Dank für Feedback