93_DbLog - kleine, evtl. nützliche Wünsche

Begonnen von chris1284, 26 Dezember 2014, 10:05:46

Vorheriges Thema - Nächstes Thema

Benni

#30
Zitat von: Benni am 19 Mai 2015, 09:01:00
... und die Doku musste angepasst werden.

Ich werde mich heute Abend darum kümmern.

Gruß Benni.

Im Anhang der Patch.
Gruß Benni.

gero

Ich habe mir gerade die aktuelle Version angesehen, um meinen fhem Absturz zu verstehen. Kann es sein, dass ihr die Änderungen nicht für sqlite nachgezogen habt?   
Für sqlite fehlen meiner Meinung nach die Werte
$sqlspec{order_by_hour}
$sqlspec{max_value}   
$sqlspec{day_before} 


Dies führt zu vielen Warnings und abschließend zum Absturz von fhem, weil das SQL Statement ungültig ist.

Gruß,
Gero
Odroid C1 - CULV3-868, JeeLink
16 x TX 29 DTH
MAX!: 15x Heizkörperthermostat+, 2x Wandthermostat, 14x Fenserkontakt, 1x Ecotaster
FS20 S4A, FS20IRF, BSB-Heizungssteuerung über Atmega2560
Z-Wave: ZME_UZB1, Fibaro Wall Plug + Motion Sensor

Tobias

hmm, ich habe leider kein SQLITE,
kannst du bitte mal schauen, welche Werte für SQLite korreekt sind??
Hier das Beispiel wie es für PostGreQL passt:

$sqlspec{order_by_hour}  = "TO_CHAR(TIMESTAMP, 'YYYY-MM-DD HH24')";
    $sqlspec{max_value}      = "MAX(VALUE)";
    $sqlspec{day_before}     = "($sqlspec{from_timestamp} - INTERVAL '1 DAY')";


Schade, das in der ziemlich langen Testphase keiner sqlite getestet hat...
Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter

gero

TO_CHAR gibt es bei sqlite nicht. Das Date & Time Handling unterscheidet sich etwas. Leider habe ich mich damit noch nie wirklich mit SQlite beschäftigt. An dieser Stelle, bin ich ausnahmsweise mal einfacher User.
Vielleicht findet sich jemand anderes, der die DbLog für SQlite wieder geradeziehen kann. Falls nicht, muß ich mich wohl etwas einarbeiten.

Gruß,
Gero
Odroid C1 - CULV3-868, JeeLink
16 x TX 29 DTH
MAX!: 15x Heizkörperthermostat+, 2x Wandthermostat, 14x Fenserkontakt, 1x Ecotaster
FS20 S4A, FS20IRF, BSB-Heizungssteuerung über Atmega2560
Z-Wave: ZME_UZB1, Fibaro Wall Plug + Motion Sensor

Punkt

...ich versuchs mal rauszusuchen.

Bei dem TO_CHAR geht es eigentlich nur darum das Datum vorzuformatieren...ich seh mal ob ich was finde.
PostGreSQL hab ich auch soweit über Hilfeseiten zusammenbekommen...
Cubieboard-2 mit 1wire-Bus und I2C-Extensions
Datenbank: mysql auf Ubuntu-Server
verschiedene "Satellitensysteme" mit ESP-8266

Punkt

...ich hab mal was rausgesucht und das angepasst.

Ich hoffe ich hab die korrekte Version im GIT-Repository gefunden (wurde vor 5 Tagen das letzte Mal geändert):

diese hier hab ich als Quelle verwendet

Ich hab das jetzt noch für Oracle und SQLite angepasst und auch den ELSE-Zweig da - wie vorher auch - einfach mit dem gesetzt was bei SQLite gesetzt wurde.
Probierts mal aus....

Patch häng ich hier an...


Viele Grüße

Michael
Cubieboard-2 mit 1wire-Bus und I2C-Extensions
Datenbank: mysql auf Ubuntu-Server
verschiedene "Satellitensysteme" mit ESP-8266

gero

Odroid C1 - CULV3-868, JeeLink
16 x TX 29 DTH
MAX!: 15x Heizkörperthermostat+, 2x Wandthermostat, 14x Fenserkontakt, 1x Ecotaster
FS20 S4A, FS20IRF, BSB-Heizungssteuerung über Atmega2560
Z-Wave: ZME_UZB1, Fibaro Wall Plug + Motion Sensor

gero

Ich habe mich doch schon jetzt an den Rechner gesetzt. Auf den ersten Blick sieht alles gut aus.

Lediglich eine Warning müllt mir noch das Log zu.
PERL WARNING: Use of uninitialized value in numeric eq (==) at ./FHEM/93_DbLog.pm line 1162.
Daher habe ich nochmal eine aktualisierte Fassung von deinem Patch angehängt.

Gruß,
Gero
Odroid C1 - CULV3-868, JeeLink
16 x TX 29 DTH
MAX!: 15x Heizkörperthermostat+, 2x Wandthermostat, 14x Fenserkontakt, 1x Ecotaster
FS20 S4A, FS20IRF, BSB-Heizungssteuerung über Atmega2560
Z-Wave: ZME_UZB1, Fibaro Wall Plug + Motion Sensor

Virsacer

Hi, ich benutze die ungepatchte version, die mit dem Update ausgeliefert wird/wurde und bekomme da folgende Logmeldungen:

2015.05.24 20:53:55 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/93_DbLog.pm line 927.
2015.05.24 20:53:55 1: PERL WARNING: Use of uninitialized value $sqlspec{"day_before"} in concatenation (.) or string at ./FHEM/93_DbLog.pm line 948.
2015.05.24 20:53:55 1: PERL WARNING: Use of uninitialized value in numeric eq (==) at ./FHEM/93_DbLog.pm line 1153.


Wäre schön, wenn das noch behoben wird :-)

Benni

Hallo Tobias,

ich denke so langsam sollte man das hier mal wieder gerade ziehen, inzwischen haben wir eine offizielle Version, die an mehreren Stellen nicht ganz korrektr funktioniert und mehrere Patches für die teils unterschiedlichen Probleme.

Ein eher unbefriedigender Zustand ;)

Gruß Benni.

Benni

Hallo Tobias,

habe gerade gesehen, dass du inzwischen zwar die Änderungen bzgl. SQLITE in svn eingecheckt hast, allerdings fehlt jetzt immer noch der Patch bzgl. der Korrektur von DbLogInclude aus diesem Post

Soll ich dir nochmal einen Patch auf der aktuellen (svn) Version bauen?

Gruß Benni.

Tobias

Schick nochmal einen aktuellen Stand rüber.  Gebe mir Mühe es dieses Wochenende zu testen und einzuchecken

Gesendet von meinem ALCATEL ONE TOUCH 997D mit Tapatalk

Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter

Benni

Hallo Tobias,

kein Problem! :)

Im Anhang der patch basierend auf der letzten SVN-Version.

Gruß Benni.

Tobias

erledigt... checkt es mal bitte ab morgen
Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter

Benni