FHEM Forum

FHEM => Automatisierung => Thema gestartet von: maxritti am 24 April 2014, 08:57:02

Titel: [Problem erkannt] - Probleme mit 93_DbLog.pm 5612 2014-04-23
Beitrag von: maxritti am 24 April 2014, 08:57:02
Hallo,

eben habe ich ein Update meiner Entwicklungsumgebung durchgeführt.
Aktualisiert wurde folgendes:

2014.04.24 08:35:38 3: update get http://fhem.de/fhemupdate4/svn/controls_fhem.txt
2014.04.24 08:35:38 3: update get http://fhem.de/fhemupdate4/svn/controls_fhem.txt
2014.04.24 08:35:44 3: update get http://fhem.de/fhemupdate4/svn/FHEM/FhemUtils/release.pm
2014.04.24 08:35:44 1: update check Releases => local: Fhem 5.5 (DEVELOPMENT) remote: Fhem 5.5 (DEVELOPMENT)
2014.04.24 08:35:44 3: update get http://fhem.de/fhemupdate4/svn/controls_fhem.txt
2014.04.24 08:35:44 1: update saving statefile
2014.04.24 08:35:44 3: update get http://fhem.de/fhemupdate4/svn/./CHANGED
2014.04.24 08:35:44 3: update get http://fhem.de/fhemupdate4/svn/FHEM/00_THZ.pm
2014.04.24 08:35:44 3: update get http://fhem.de/fhemupdate4/svn/FHEM/01_FHEMWEB.pm
2014.04.24 08:35:44 3: update get http://fhem.de/fhemupdate4/svn/FHEM/31_LightScene.pm
2014.04.24 08:35:45 3: update get http://fhem.de/fhemupdate4/svn/FHEM/33_readingsProxy.pm
2014.04.24 08:35:45 3: update get http://fhem.de/fhemupdate4/svn/FHEM/42_SYSMON.pm
2014.04.24 08:35:45 3: update get http://fhem.de/fhemupdate4/svn/FHEM/45_TRX.pm
2014.04.24 08:35:45 3: update get http://fhem.de/fhemupdate4/svn/FHEM/46_TRX_ELSE.pm
2014.04.24 08:35:45 3: update get http://fhem.de/fhemupdate4/svn/FHEM/46_TRX_LIGHT.pm
2014.04.24 08:35:45 3: update get http://fhem.de/fhemupdate4/svn/FHEM/46_TRX_SECURITY.pm
2014.04.24 08:35:45 3: update get http://fhem.de/fhemupdate4/svn/FHEM/46_TRX_WEATHER.pm
2014.04.24 08:35:45 3: update get http://fhem.de/fhemupdate4/svn/FHEM/93_DbLog.pm
2014.04.24 08:35:46 3: update get http://fhem.de/fhemupdate4/svn/FHEM/95_holiday.pm
2014.04.24 08:35:46 3: update get http://fhem.de/fhemupdate4/svn/FHEM/98_SVG.pm
2014.04.24 08:35:46 3: update get http://fhem.de/fhemupdate4/svn/FHEM/98_configdb.pm
2014.04.24 08:35:46 3: update get http://fhem.de/fhemupdate4/svn/FHEM/98_weblink.pm
2014.04.24 08:35:46 3: update get http://fhem.de/fhemupdate4/svn/docs/commandref.html
2014.04.24 08:35:48 3: update get http://fhem.de/fhemupdate4/svn/docs/commandref_DE.html
2014.04.24 08:35:49 1: update 18 file(s) have been updated.


Seit dem bekomme ich beim starten von Fhem diese Meldung:

2014.04.24 08:49:07 1: Cannot open database configuration file /opt/fhem/contrib/dblog/db.conf.
2014.04.24 08:49:07 1: define myDbLog myDbLog DbLog /opt/fhem/contrib/dblog/db.conf .*:.*: Can't connect to database.


Ein version zeigt mir dies:

# $Id: 93_DbLog.pm 5612 2014-04-23 18:12:07Z tobiasfaust $

Diese Datei aus einem Backup verbindet wieder erfolgreich:

# $Id: 93_DbLog.pm 5348 2014-03-28 09:38:23Z tobiasfaust $
Titel: Antw:Probleme mit 93_DbLog.pm 5612 2014-04-23
Beitrag von: maxritti am 24 April 2014, 09:39:18
Ich vergass zu schreiben:

Ein "configdb filemove ./contrib/dblog/db.conf" habe ich ausgeführt. Danach ist die db.conf auch nicht mehr im Filesystem.
Dennoch die Fehlermeldung.

Titel: Antw:Probleme mit 93_DbLog.pm 5612 2014-04-23
Beitrag von: betateilchen am 24 April 2014, 10:02:27

Lösungsweg:

define myDbLog myDbLog DbLog ./contrib/dblog/db.conf .*:.*

Danach prüfen, ob es funktioniert. WENN es funktioniert (und NUR DANN!) ein save config.

Titel: Antw:Probleme mit 93_DbLog.pm 5612 2014-04-23
Beitrag von: maxritti am 24 April 2014, 13:32:14
Nach Deinem 2. Hinweis habe ich mal ein "delete myDbLog" gemacht, dann die db.conf in den Hauptzweig von Fhem verschoben.
Gebe ich dann deinen Lösungsvorschlag (mit dem Pfad /opt/fhem/db.conf) ein kommt die Meldung:

Unknown module myDbLog

Ist ja eigentlich auch logisch denke ich. Denn 2 x myDbLog in dem define?

Wenn ich nun ein define myDbLog DbLog /opt/fhem/db.conf .*:.* mache, verdoppelt der mir im Log wieder das myDbLog.

2014.04.24 13:23:10 1: Cannot open database configuration file /opt/fhem/db.conf.
2014.04.24 13:23:10 1: define myDbLog myDbLog DbLog /opt/fhem/db.conf .*:.*: Can't connect to database.


Die erste Zeile, dass er die db.conf nicht findet verstehe ich auch nicht ganz, denn die kann vom fhem user gelesen und bearbeitet werden.

fhem@tdfsr178193:~/contrib/dblog$ cat /opt/fhem/db.conf
#
# database configuration file
#
#
## for MySQL
################################################################
%dbconfig= (
connection => "mysql:database=DEV-fhem;host=192.168.178.192;port=3306",
user => "fhemsql",
password => "...",
);
################################################################
#
## for PostgreSQL
################################################################
#%dbconfig= (
#        connection => "Pg:database=fhem;host=localhost",
#        user => "fhemuser",
#        password => "fhempassword"
#);
################################################################
#
## for SQLite (username and password stay empty for SQLite)
################################################################
#%dbconfig= (
#        connection => "SQLite:dbname=/opt/fhem/fhem.db",
#        user => "",
#        password => ""
#);
################################################################


Nehme ich nun das 93_DbLog.pm von 28.03.2014 kann ich mein DbLog wieder ohne Fehler definieren.

Habe ich meine Config DB nun schon unbrauchbar gemacht?


Titel: Antw:Probleme mit 93_DbLog.pm 5612 2014-04-23
Beitrag von: betateilchen am 24 April 2014, 13:38:54
Zitat von: maxritti am 24 April 2014, 13:32:14
Habe ich meine Config DB nun schon unbrauchbar gemacht?

Du hast einfach nur treudoof meinen Lösungsvorschlag per copy&paste übernommen, obwohl Du sogar selbst den Fehler darin schon erkannt hast:

Zitat2 x myDbLog in dem define?

Es muss natürlich heißen:

define myDbLog DbLog ./contrib/dblog/db.conf .*:.*

Und weisst Du auch, woher der Fehler kam?

Aus DEINEM ersten Beitrag hier

Zitat2014.04.24 08:49:07 1: define myDbLog myDbLog DbLog /opt/fhem/contrib/dblog/db.conf .*:.*: Can't connect to database.

aus dem ich die Zeile genauso treudoof kopiert und einfach nur die Pfadangabe geändert habe  :P
Du hattest also den Fehler bei Dir schon heute morgen im System.

Titel: Antw:Probleme mit 93_DbLog.pm 5612 2014-04-23
Beitrag von: maxritti am 24 April 2014, 14:14:01
Na das hilft ja nun ungemeine weiter.

Zumal es ja bis gestern vor dem Update noch lief und dies auch mit der "alten" 93_DbLog.pm noch funktioniert.

Hast Du denn eine Idee, warum das verdoppelt wird?
Denn wie Du siehst, gebe ich es nur einfach ein und es wird dann doppelt im Log angegeben.
Titel: Antw:Probleme mit 93_DbLog.pm 5612 2014-04-23
Beitrag von: betateilchen am 24 April 2014, 14:16:27
Mach mal bitte ein "configdb filelist" und ein "configdb list <dbLogName>" und poste beide Ergebnisse hier.


Titel: Antw:Probleme mit 93_DbLog.pm 5612 2014-04-23
Beitrag von: betateilchen am 24 April 2014, 14:17:23
Zitat von: maxritti am 24 April 2014, 14:14:01
Denn wie Du siehst, gebe ich es nur einfach ein und es wird dann doppelt im Log angegeben.

das sehe ich nirgends, ich muss das glauben, was Du hier schreibst ;)
Titel: Antw:Probleme mit 93_DbLog.pm 5612 2014-04-23
Beitrag von: maxritti am 24 April 2014, 14:30:16
configdb filelist

Files found in database:
------------------------------------------------------------


configdb list myDblog

search result for device: myDbLog in version: 0
--------------------------------------------------------------------------------


Rührt wohl daher, dass ich sowohl ein

configdb filedelete ./contrib/dblog/db.conf

als auch ein

configdb filedelete ./db.conf

eingegeben habe um eine so wie ich dachte konsistente Konfiguration zu erhalten, wo alles über die im Verzeichnis befindliche db.conf läuft.

Nur noch mal um sicher zu gehen:

# $Id: 93_DbLog.pm 5348 2014-03-28 09:38:23Z tobiasfaust $

ist derzeit im Einsatz, da ich mit der neuen Version ein define myDbLog DbLog .... gar nicht mehr ans fliegen bekomme.
Titel: Antw:Probleme mit 93_DbLog.pm 5612 2014-04-23
Beitrag von: betateilchen am 24 April 2014, 14:42:57
Weißt Du, was mich grade massiv stört?

Du hast ein Problem und erwartest hier Hilfe - die ich Dir gerne geben möchte.
Aber gleichzeitig wurschtelst Du irgenwas bei Dir auf dem System rum, von dem Du hoffst/glaubst/vermutest, dass es irgendwas nützen könnte.

So geht das nicht - so kommen wir nicht weiter!

Einfache Regel:

Du fragst - dann wartest Du auf meine Antwort und tust solange NICHTS.
Ich frage - dann warte ich auf Deine Antwort.
Titel: Antw:Probleme mit 93_DbLog.pm 5612 2014-04-23
Beitrag von: betateilchen am 24 April 2014, 14:49:23
Zitatconfigdb list myDblog

Code:
search result for device: myDbLog in version: 0
--------------------------------------------------------------------------------

Rührt wohl daher, dass ich

Das rührt daher, dass Du irgenwann mal ein "save config" gemacht hast, obwohl das DbLog Device überhaupt nicht vorhanden war. Ein nicht vorhandenes Device kann auch nicht gespeichert werden.


Und dann mach nochmal ein "configdb filelist" und ein "configdb list <dbLogName>" und poste beide Ergebnisse hier - sofern der Fehler dann immer noch besteht.
Titel: Antw:Probleme mit 93_DbLog.pm 5612 2014-04-23
Beitrag von: maxritti am 24 April 2014, 17:07:02
Zitat von: betateilchen am 24 April 2014, 14:42:57
Weißt Du, was mich grade massiv stört?

Du hast ein Problem und erwartest hier Hilfe - die ich Dir gerne geben möchte.
Aber gleichzeitig wurschtelst Du irgenwas bei Dir auf dem System rum, von dem Du hoffst/glaubst/vermutest, dass es irgendwas nützen könnte.

So geht das nicht - so kommen wir nicht weiter!

Einfache Regel:

Du fragst - dann wartest Du auf meine Antwort und tust solange NICHTS.
Ich frage - dann warte ich auf Deine Antwort.


Okay.
So manches Gewitter reinigt mal die Luft :)

Allerdings erwarten tue ich hier gar nichts. Hoffen, dass jemand ein offenes Ohr für die Probleme hat, wäre da treffender.
Ich weiss, dass hier viele die Freizeit opfern um FHEM weiter zu entwickeln und anderen zu helfen.
Dafür mal ganz herzlichen Dank an dieser Stelle.

Nun aber back to topic:

1. Aktualisiere die Datei 93_DbLog.pm auf den aktuellen Stand von gestern abend.

Das ist dann diese

# $Id: 93_DbLog.pm 5348 2014-03-28 09:38:23Z tobiasfaust $

2. Lege Dir in ./FHEM eine Konfigurationsdatei mit den richtigen Verbindungsdaten zu Deiner Datenbank an

Nur um sicherzugehen, damit wir das gleiche meinen.
./FHEM ist dann dein fhem Hauptzweig also /opt/fhem/FHEM?
Weil die urspünglich existierende fhem.cfg und configDB.conf liegen nicht dort sondern unter /opt/fhem/

Titel: Antw:Probleme mit 93_DbLog.pm 5612 2014-04-23
Beitrag von: betateilchen am 24 April 2014, 19:42:02
Zitat von: maxritti am 24 April 2014, 17:07:02
# $Id: 93_DbLog.pm 5348 2014-03-28 09:38:23Z tobiasfaust $

Nein. Die aktuelle Version, ist die von gestern abend - wie schon mehrfach gesagt.

# $Id: 93_DbLog.pm 5612 2014-04-23 18:12:07Z tobiasfaust $

Das ist genau die Version, die auch schon den ganzen Tag in Deinem Thread-Titel stehen hast.

2. Lege Dir in ./FHEM eine Konfigurationsdatei mit den richtigen Verbindungsdaten zu Deiner Datenbank an

Zitat von: maxritti am 24 April 2014, 17:07:02
Nur um sicherzugehen, damit wir das gleiche meinen.
./FHEM ist dann dein fhem Hauptzweig also /opt/fhem/FHEM?

Ja.

Zitat von: maxritti am 24 April 2014, 17:07:02
Weil die urspünglich existierende fhem.cfg und configDB.conf liegen nicht dort sondern unter /opt/fhem/

mach doch bitte einfach EINMAL was man Dir hier als Hilfe anbietet. Es geht ausschließlich darum, dass ICH eine Basis habe, von der ich weiterhin ausgehen, wenn wir hier weiterdiskutieren. Ich kann doch nicht auf Deinen Monitor schauen, um zu sehen, was Du wirklich tust - deshalb muss ich ich darauf verlassen, dass Du genau DAS getan hast, was ich Dir empfohlen habe.
Titel: Antw:Probleme mit 93_DbLog.pm 5612 2014-04-23
Beitrag von: maxritti am 24 April 2014, 20:04:27
1. Aktualisiere die Datei 93_DbLog.pm auf den aktuellen Stand von gestern abend.

Erledigt.

2. Lege Dir in ./FHEM eine Konfigurationsdatei mit den richtigen Verbindungsdaten zu Deiner Datenbank an

Erledigt.

#
# database configuration file
#
#
## for MySQL
################################################################
%dbconfig= (
connection => "mysql:database=DEV-fhem;host=192.168.178.192;port=3306",
user => "fhemuser",
password => "...",
);
################################################################
#
## for PostgreSQL
################################################################
#%dbconfig= (
#        connection => "Pg:database=fhem;host=localhost",
#        user => "fhemuser",
#        password => "fhempassword"
#);
################################################################
#
## for SQLite (username and password stay empty for SQLite)
################################################################
#%dbconfig= (
#        connection => "SQLite:dbname=/opt/fhem/fhem.db",
#        user => "",
#        password => ""
#);
################################################################


3. Importiere diese Datei in die Datenbank mit "configdb fileimport <datenbankdatei>"

Als Ergebnis sagt FHEM mir dies:

30 lines written from file ./FHEM/db.conf to database

4. Starte Dein fhem jetzt neu.

Erledigt.

5. Definiere das DbLog Device unter Angabe der Konfigurationsdatei einschließlich der gleichen Pfadangabe, die Du beim fileimport verwendet hast

Liefert mir dies im Logfile von FHEM und FHEM ist nicht mehr erreichbar.

2014.04.24 19:59:30 3: Unknown dbmodel type in configuration file ./FHEM/db.conf.
2014.04.24 19:59:30 3: Only Mysql, Postgresql, Oracle, SQLite are fully supported.
2014.04.24 19:59:30 3: It may cause SQL-Erros during generating plots.
2014.04.24 19:59:30 3: Connecting to database  with user


6. Halte Dich exakt an die angegebene Reihenfolge der vorgenannten fünf Schritte.

Habe ich hoffentlich gemacht.
Titel: Antw:Probleme mit 93_DbLog.pm 5612 2014-04-23
Beitrag von: betateilchen am 24 April 2014, 20:14:16
nix vergessen?

Zitat von: betateilchen am 24 April 2014, 14:49:23
Und dann mach nochmal ein "configdb filelist" und ein "configdb list <dbLogName>" und poste beide Ergebnisse hier - sofern der Fehler dann immer noch besteht.
Titel: Antw:Probleme mit 93_DbLog.pm 5612 2014-04-23
Beitrag von: maxritti am 24 April 2014, 20:21:43
configdb filelist

Files found in database:
------------------------------------------------------------
./FHEM/db.conf


configdb list myDbLog

search result for device: myDbLog in version: 0
--------------------------------------------------------------------------------
Titel: Antw:Probleme mit 93_DbLog.pm 5612 2014-04-23
Beitrag von: betateilchen am 24 April 2014, 20:31:04
Ich hab gerade keine Ahnung, was Du da falschmachst. Und ich habe auch keine Ahnung, was man da falschmachen KÖNNTE.

*grübel*
Titel: Antw:Probleme mit 93_DbLog.pm 5612 2014-04-23
Beitrag von: maxritti am 24 April 2014, 20:44:25
Dann sind wir immerhin schon mal zu Zweit  :D

Irgendwo müsste man doch einen Ansatz finden, warum der den dbmodel type nun nicht mehr aus der in der Config DB befindlichen Teil raus bekommt sobald ich das myDbLog definieren will?

Sagen Dir denn die folgenden Zeilen der 93_DbLog.pm etwas, wo was von Use of unitialized value... auftaucht, bevor FHEM abschmiert?

Use of uninitialized value $dbconn in pattern match (m//) at ./FHEM/93_DbLog.pm line 611.
Use of uninitialized value $dbconn in pattern match (m//) at ./FHEM/93_DbLog.pm line 613.
Use of uninitialized value $dbconn in pattern match (m//) at ./FHEM/93_DbLog.pm line 615.
Use of uninitialized value $dbconn in pattern match (m//) at ./FHEM/93_DbLog.pm line 617.
2014.04.24 20:41:32 3: Unknown dbmodel type in configuration file ./FHEM/db.conf.
Titel: Antw:Probleme mit 93_DbLog.pm 5612 2014-04-23
Beitrag von: betateilchen am 24 April 2014, 20:44:54
Probier mal, ob es mit der Angabe von kompletten Pfadnamen funktioniert.

also zuerst:

configdb fileimport /opt/fhem/FHEM/db.conf

und dann

define myDbLog DbLog /opt/fhem/FHEM/db.conf .*:.*
Titel: Antw:Probleme mit 93_DbLog.pm 5612 2014-04-23
Beitrag von: betateilchen am 24 April 2014, 20:47:49
vergiss das mit den kompletten Pfadnamen, das funktioniert auch mit ./FHEM/db.conf
Titel: Antw:Probleme mit 93_DbLog.pm 5612 2014-04-23
Beitrag von: betateilchen am 24 April 2014, 20:50:04
Editiere die db.conf und schmeiße alle Zeilen raus, bis auf die fünf mit den Konfigurationsdaten.

Achte aber darauf, die Datei danach wieder in die Datenbank zu importieren!


%dbconfig= (
connection => "mysql:database=fhemLog;host=rasp-nas;port=3306",
user => "fhem-dev",
password => "fhem-dev",
);
Titel: Antw:Probleme mit 93_DbLog.pm 5612 2014-04-23
Beitrag von: maxritti am 24 April 2014, 20:56:36
Datei bearbeitet und neu importiert:

5 lines written from file ./FHEM/db.conf to database

define myDbLog DbLog ./FHEM/db.conf .*:.*

Schau mal einer an...

2014.04.24 20:54:50 3: Connecting to database mysql:database=DEV-fhem;host=192.168.178.192;port=3306 with user fhemuser
2014.04.24 20:54:50 3: Connection to db mysql:database=DEV-fhem;host=192.168.178.192;port=3306 established for pid 29438
2014.04.24 20:54:50 3: Connection to db mysql:database=DEV-fhem;host=192.168.178.192;port=3306 established


Titel: Antw:Probleme mit 93_DbLog.pm 5612 2014-04-23
Beitrag von: betateilchen am 24 April 2014, 21:16:34
Ich habs fast befürchtet...

Danke für Deine Geduld. Da muss ich in 93_DbLog noch eine Änderung beim Lesen der Konfigurationsdaten einbauen. Ich weiss ja nun, was ich testen muss ;)


Titel: Antw:Probleme mit 93_DbLog.pm 5612 2014-04-23
Beitrag von: maxritti am 24 April 2014, 21:25:22
Zitat von: betateilchen am 24 April 2014, 21:16:34
Danke für Deine Geduld. Da muss ich in 93_DbLog noch eine Änderung beim Lesen der Konfigurationsdaten einbauen.
Kein Problem gerne wieder.
Titel: Antw:[Problem erkannt] - Probleme mit 93_DbLog.pm 5612 2014-04-23
Beitrag von: betateilchen am 24 April 2014, 21:29:56
ne, lieber nicht nochmal.
Titel: Antw:[Problem erkannt] - Probleme mit 93_DbLog.pm 5612 2014-04-23
Beitrag von: maxritti am 24 April 2014, 21:37:52
 ???
Titel: Antw:[Problem erkannt] - Probleme mit 93_DbLog.pm 5612 2014-04-23
Beitrag von: betateilchen am 24 April 2014, 21:45:28
Nicht wegen Dir, sondern wegen so einem doofen Problem.

Ich hab übrigens schon die Lösung gefunden, sodass es nun auch mit Kommentarzeilen in der Konfigurationsdatei funktioniert.