[Gelöst]dbLog Performance Plot

Begonnen von Deckoffizier, 10 September 2017, 08:25:18

Vorheriges Thema - Nächstes Thema

Amenophis86

@Heiko kannst du da mal Licht ins Dunkle bringen, damit ich es im Wiki entsprechend ändern kann :)
Aktuell dabei unser neues Haus mit KNX am einrichten. Im nächsten Schritt dann KNX mit FHEM verbinden. Allein zwei Dinge sind dabei selten: Zeit und Geld...

DS_Starter

Ja, nach meinem Urlaub. Habe den Code gerade nicht vor mir und mit einem telefon schreiben und testen ist eh keine so tolle Sache  ;)

grüsse
Heiko
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Jewe

Zitat von: Deckoffizier am 12 September 2017, 20:33:16
Bei mir versuche ich erst mal mit DOIF     
([03:00:00]) (set myDbLog deleteOldDaysNbl 3) { Log 1, "SQL Lite Datenbank geschrumpft" }

Hei,
nun habe ich auch einen index erstellt und es ist performater geworden. Super.
Die Datenreduzierung habe ich mal manuell üder das DBLog device gestartet, um dann
festzustellen, dass mein Fhem bis zum Ende (so ca. 8 Stunden später) nicht mehr
ansprechbar war.
Wie mache ich das richtig, ohne dass das System komplett ausgebremst wird ?
Habe irgendwas von nonblocking gelesen.

Jens

Amenophis86

Ich habe für solche Sachen ein zweites FHEM auf dem gleichen Pi aufgesetzt. Alles was blockiert wird mit diesem ausgeführt und ist mit FHEM2FHEM mit der Hauptinstanz verbunden.
Aktuell dabei unser neues Haus mit KNX am einrichten. Im nächsten Schritt dann KNX mit FHEM verbinden. Allein zwei Dinge sind dabei selten: Zeit und Geld...

Deckoffizier

Hallo Jens,

stehe ja auch erst am Anfang zum Thema Reduzierung der Daten in der SQlite Datenbank.

Hierzu lässt sich eigentlich einiges im Forum erlesen aber vor Fehlern beim probieren habe ich doch schon Bange vom hunderdsten ins tausendste zu kommen.

Probiere doch mal bei Deiner Datenbank das attr userReadings zu setzen mit DbFileSize:reduceLogState.* { (split(' ',`du -m fhem.db`))[0] }

Dann mal in set ein reduceLog 3

Achtung !! die 3 bewirkt soweit alles gelöscht wird was älter als 3 Tage auf eigene Gefahr.

Nach einiger Zeit 1 - 2 Stunden  den set Befehl wiederholen so sieht Du am geänderten Reading Wert DbFileSize was in der Zeit so aufgelaufen ist in MB.
Ein Tip hatte ich noch hier gefunden die Datenbank nicht selbst mit zu loggen mit attr DbLogExclude myDbLog.
myDbLog ist der Name meiner Datenbank.

Wie gesagt Thema ist auch nur Neuland für mich und stümpere  erst mal nur und schau mal in Dein Log.

Gruß
Hans-Jürgen



   
FHEM 5.8 auf "yakkaroo Emu A1FL.1" mit CUL 868MHz, SIGNALduino,2 1Wire USB Busmaster, diverse 1 Wire Sensoren,Landroid,Aeotec USB Dongle Z-Wave Plus

DS_Starter

Hallo Jens, @all,

das Dblog-device muss im asynchronen modus betrieben werden damit es non-blocking arbeitet und alle funktionen mit dem zusatz "nbl", die für sich genommen ebenfalls non-blocking designed sind, auch so funktionieren.
Hintergrund ist die arbeitsweise der datenbank eine tabelle in bestimmten situationen zu sperren. wird dann das dblog-device synchron betrieben und kann nicht in die db bzw. tabelle schreiben,  blockiert fhem.

grüsse
Heiko
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

DS_Starter

Hallo Amenophis,

Zitat@Heiko kannst du da mal Licht ins Dunkle bringen, damit ich es im Wiki entsprechend ändern kann :)

Der Code im Wiki ist tatsächlich falsch. Es wird das Reading "reduceLogState" angelegt und nicht "lastReduceLogResult".
Somit hat Hans-Jürgen recht und mit dem Code aus dem Wiki wird das userreading nicht funktionieren.

Grüße
Heiko
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Amenophis86

Alles klar, dank dir Heiko. Habe es auf DbFileSize:reduceLogState.* { (split(' ',`du -m fhem.db`))[0] } geändert.

Grüße Etienne
Aktuell dabei unser neues Haus mit KNX am einrichten. Im nächsten Schritt dann KNX mit FHEM verbinden. Allein zwei Dinge sind dabei selten: Zeit und Geld...