NEWS
History2DB converter
-
Gibt doch noch Probleme. iobroker.log meldet dauernd Fehler:
sql.0 2017-02-18 22:49:53.292 error sql.0 Error: ER_CON_COUNT_ERROR: Too many connections sql.0 2017-02-18 22:49:53.292 error sql.0 Error: ER_CON_COUNT_ERROR: Too many connections sql.0 2017-02-18 22:49:53.292 error sql.0 Error: ER_CON_COUNT_ERROR: Too many connections sql.0 2017-02-18 22:49:53.292 error sql.0 Error: ER_CON_COUNT_ERROR: Too many connections sql.0 2017-02-18 22:49:53.292 error sql.0 Error: ER_CON_COUNT_ERROR: Too many connections sql.0 2017-02-18 22:49:52.636 error sql.0 Cannot insert INSERT INTO `iobroker`.ts_bool (id, ts, val, ack, _from, q) VALUES(547, 2017001, false, 1, 3, 0);: Error: ER_DUP_ENTRY: Duplicate entry '547-2017001' for key 'PRIMARY' sql.0 2017-02-18 22:49:52.636 error sql.0 Cannot insert INSERT INTO `iobroker`.ts_bool (id, ts, val, ack, _from, q) VALUES(547, 2017000, false, 1, 3, 0);: Error: ER_DUP_ENTRY: Duplicate entry '547-2017000' for key 'PRIMARY' sql.0 2017-02-18 22:49:52.261 error sql.0 Cannot insert INSERT INTO `iobroker`.ts_bool (id, ts, val, ack, _from, q) VALUES(529, 2017001, false, 1, 3, 0);: Error: ER_DUP_ENTRY: Duplicate entry '529-2017001' for key 'PRIMARY' sql.0 2017-02-18 22:49:52.261 error sql.0 Cannot insert INSERT INTO `iobroker`.ts_bool (id, ts, val, ack, _from, q) VALUES(529, 2017000, false, 1, 3, 0);: Error: ER_DUP_ENTRY: Duplicate entry '529-2017000' for key 'PRIMARY' sql.0 2017-02-18 22:49:51.917 error sql.0 Cannot insert INSERT INTO `iobroker`.ts_bool (id, ts, val, ack, _from, q) VALUES(545, 2017001, false, 1, 3, 0);: Error: ER_DUP_ENTRY: Duplicate entry '545-2017001' for key 'PRIMARY' sql.0 2017-02-18 22:49:51.917 error sql.0 Cannot insert INSERT INTO `iobroker`.ts_bool (id, ts, val, ack, _from, q) VALUES(545, 2017000, false, 1, 3, 0);: Error: ER_DUP_ENTRY: Duplicate entry '545-2017000' for key 'PRIMARY'
-
Kleiner Tipp,
beobachte mal die iobroker logs.
Wenn Du während der Übertragung zu viele von diesen "Log missing"-meldungen oder andere Fehler bekommst dann abbrechen ("x" drücken!! dann bricht er am Tagesende ab). Dann einen Parameter anfügen. Mit dem Delay-Multiplikator kannst Du die geschwindigkeit/Wratezeiten "tunen". Wenn zuviele Meldungen kommen ist z.B. 2 ein um Faktor 2 höherer Delay … das hilft vllt
Die "duplicate entry" kommen bei speziellen "ALARM"-Datenpunkten ... da werden manchmal falsche Timestamps generiert ... die kannst Du ignorieren wenn Sie so aussehen wie in deiner Meldung
Dann viel Spass und Danke für Diene geduld und Unterstützung beim Bugfixing
-
Kleiner Tipp,
beobachte mal die iobroker logs.
Wenn Du während der Übertragung zu viele von diesen "Log missing"-meldungen oder andere Fehler bekommst dann abbrechen ("x" drücken!! dann bricht er am Tagesende ab). Dann einen Parameter anfügen. Mit dem Delay-Multiplikator kannst Du die geschwindigkeit/Wratezeiten "tunen". Wenn zuviele Meldungen kommen ist z.B. 2 ein um Faktor 2 höherer Delay … das hilft vllt
Die "duplicate entry" kommen bei speziellen "ALARM"-Datenpunkten ... da werden manchmal falsche Timestamps generiert ... die kannst Du ignorieren wenn Sie so aussehen wie in deiner Meldung
Dann viel Spass und Danke für Diene geduld und Unterstützung beim Bugfixing `
Habe es abgebrochen und neugestartet mit der 2 hinter dem Pfad und er hat erneut versucht Alarme einzulesen und den Rest hat er übersprungen. Während dessen kamen weiterhin die duplicate entry Einträge, stimmt also mit Deiner Vermutung überein.
Die Connection-Fehlermeldung kommt jetzt nicht mehr.
-
Hallo,
gibt es eigentlich auch eine Möglichkeit eine bestehende ioBroker "SQL History" in eine "Influx DB" History zu übertragen?
-
Aktuell nicht. Ein weg wäre irgendwie aus SQL-Daten wieder JS-Files zu erzeugen, dann geht der Converter von hier … aber ob das sinnvoll ist weiss ich nicht.
Einfacher wohl eher die Daten über kluge queries als csv oder so aus sql rauszuholen (also ohne ioBroker, sondern direkt mit SQL-Tools/Kommandozeile oder so). Dann ein bissl Texteditor Magie oder ein kleines Skriptchen was das diekt in die Influxdb pumpt.
Wie fit bist Du mit sowas?
-
Einfacher wohl eher die Daten über kluge queries als csv oder so aus sql rauszuholen (also ohne ioBroker, sondern direkt mit SQL-Tools/Kommandozeile oder so). Dann ein bissl Texteditor Magie oder ein kleines Skriptchen was das diekt in die Influxdb pumpt.
Wie fit bist Du mit sowas? `
So etwas in der Art hatte ich mir vorgestellt, leider habe ich im moment kein Zeit mich darin einzuarbeiten.Hätte gehofft ist gibt schon etwas fertiges… trozdem Danke für die Antwort.
-
Hallo zusammen,
ich versuche gerade meine history in influxdb zu konvertieren ..klappt aber leider nicht gleicher Fehler bei analyze script und history2db script
nodejs history2db.js influxdb.0 debug 0 /home/history --processAllDPs --simulate module.js:550 throw err; ^ Error: Cannot find module '/opt/history2db/ioBroker.history/converter/../lib/utils' at Function.Module._resolveFilename (module.js:548:15) at Function.Module._load (module.js:475:25) at Module.require (module.js:597:17) at require (internal/module.js:11:18) at Object.<anonymous> (/opt/history2db/ioBroker.history/converter/history2db.js:9:14) at Module._compile (module.js:653:30) at Object.Module._extensions..js (module.js:664:10) at Module.load (module.js:566:32) at tryModuleLoad (module.js:506:12) at Function.Module._load (module.js:498:3)
Ich befürchte mir fehlt da was aber was?
Hängt es an dem .../lib/utils am Ende der Error Zeile?
Hab einfach das ioBroker.history git geclont da müsste ja alles mitgekommen sein was ich brauche oder?Irgendjemand eine Idee?
Für jede Hilfe dankbar
Stefan -
@stefan sagte in History2DB converter:
/opt/history2db/ioBroker.history/converter/../lib/utils
da ist doch verkehrt.. von wo rufst du das Script auf
-
Hmm aus dem Verzeichnis wo ich das git hingeklont hab ...
Muss es aus dem iobroker installationsverzeichnis aufgerufen werden? -
@stefan : ich habe die selbe Fehlermeldung wie du... konntest du das lösen ?
-
Hallo, möchte meine Daten auch gerne übernehmen und kämpfe mit der zuletzt genannten Fehlermeldung. Könnte jemand freundlicherweise nochmal die genaue Syntax für den Befehl schreiben.
Vielen Dank
-
Hallo,
die richtige Syntax scheint nun gefunden. Mit dem Parameter -simulate kommen auch scheinbar vernünftige Ausgaben. Wenn ich allerdings mit history2db.js die Daten in influx schreiben will, dann kommen zwar über putty in der Konsole vermeintlich vernünftige Ausgaben, im Log von iobroker aber nur:
Auszughistory.0 2020-01-25 16:16:18.390 error (1626) storeState called with invalid data history.0 2020-01-25 16:16:18.389 error (1626) storeState called with invalid data history.0 2020-01-25 16:16:18.388 error (1626) storeState called with invalid data history.0 2020-01-25 16:16:18.386 error (1626) storeState called with invalid data history.0 2020-01-25 16:16:18.384 error (1626) storeState called with invalid data history.0 2020-01-25 16:16:18.383 error (1626) storeState called with invalid data history.0 2020-01-25 16:16:18.381 error (1626) storeState called with invalid data history.0 2020-01-25 16:16:18.380 error (1626) storeState called with invalid data history.0 2020-01-25 16:16:18.363 error (1626) storeState called with invalid data influxdb.0 2020-01-25 16:16:19.639 error (8469) storeState called with invalid data influxdb.0 2020-01-25 16:16:19.632 error (8469) storeState called with invalid data influxdb.0 2020-01-25 16:16:19.631 error (8469) storeState called with invalid data influxdb.0 2020-01-25 16:16:19.630 error (8469) storeState called with invalid data influxdb.0 2020-01-25 16:16:19.629 error (8469) storeState called with invalid data influxdb.0 2020-01-25 16:16:19.628 error (8469) storeState called with invalid data influxdb.0 2020-01-25 16:16:19.626 error (8469) storeState called with invalid data influxdb.0 2020-01-25 16:16:19.620 error (8469) storeState called with invalid data influxdb.0 2020-01-25 16:16:19.612 error (8469) storeState called with invalid data
Kann mir jemand sagen, woran das wohl liegt?
-
-
Mach bitte mal ein Issue auf im History Projekt. Muss ich mir ansehen
-
Issue erstellt
-
-
Kam noch nicht dazu. Sorry
-
Hallo Zusammen,
gibt es zu dieser Problematik "History-Daten in eine InfluxDB" importieren ein Tool das durch Personen ohne Datenbankprogrammierkenntnisse bedient werden kann?
Beste Grüße
Marcus -
Hallo Marcus,
wenn Du Dich an die Anleitung hältst, dann brauchst Du keine Kenntnisse. Gehe davon aus, dass Dein ioBroker unter Linux läuft, dann genügt die Anleitung in der readme, vorher wichtig: Backup machen.
Schau dazu auf den github vom history Adapter. Hier stehen die Befehle, die unter Linux per SSH abgesetzt werden müssen.
Die beiden Jungs aus dem thread hier haben zusammen auch den Fehler ausgemerzt und das Übertragen der Werte funktioniert jetzt einwandfrei. Falls was unklar bleibt, nochmal melden und vor allem zeigen, wo es hakt.Grüße und viel Erfolg
-
@XxJooO Danke.
Du hast mir Mut gemacht.
Ich werde es bei Gelegenheit testen.Marcus
Es hat geklappt:
545 Tagesverzeichnisse mit ca. 18GB Daten wurden in 7h mit Erfolg umgezogen.Nochmals vielen Dank, für die Arbeit.
Marcus