DBLog waiting for connection

Begonnen von fireb, 06 Oktober 2016, 15:11:54

Vorheriges Thema - Nächstes Thema

fireb

Hallo,

ich habe gerade versucht meine FHEM installation auf DBLog zumzustellen. Dazu habe ich auf meinem Virtuellen FHEM Server welcher unter Debian läuft MySql installiert und bin dabei nach dieser Anleitung vorgegangen:
https://haus-automatisierung.com/hardware/fhem/2016/05/20/fhem-tutorial-reihe-part-7-mysql-server-fuer-logging-nutzen

Wenn ich jetzt unter FHEM den Befehl
define DBLogging DbLog /opt/fhem/contrib/dblog/db.conf .*:.*

ausführe, steht unter STATE immer "Waiting for connection".

Der MySql Dienst läuft allerdings. Die Benutzerdaten sind auch richtig, denn mit dem Programm MySQL Workbench kann ich mich ohne Probleme auf die MySQL Datenbank verbinden und sehe auch alle Tabellen.

Wisst Ihr was ich da noch probieren könnte?

lg
fireb

CoolTux


/opt/fhem/contrib/dblog/db.conf


In dieser Datei hast Du Deine Anmeldedaten unter for MySQL eingetragen?
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

kumue

benutzt Du bei Dir configdb oder die fhem.cfg ?
Ich spiele auf die Frage/Anmerkung an, welche Spezialtrick in der Anleitung gestellt hat...

fireb

Hallo,

Zitat von: CoolTux am 06 Oktober 2016, 15:20:42

/opt/fhem/contrib/dblog/db.conf


In dieser Datei hast Du Deine Anmeldedaten unter for MySQL eingetragen?
Ja, ich habe die Benutzerdaten entsprechend eingetragen und die "#" vor den Einträgen entfernt.
Jetzt musste ich allerdings feststellen, dass es funktioniert, wenn ich statt meinem FHEMUSER Benutzer den Root Benutzer von MySQL verwenden. Ich würde aber aus Sicherheitsgründen dennoch gerne den FHEMUSER verwenden. Kann es vielleicht sein, dass mein Passwort (DGaGFa55h7z$R) zu lange ist oder Sonderzeichen nicht unterstützt werden?
Ich werde nun einmal versuchen das Passwort zu einem "einfacheren" abzuändern.

Zitat von: kumue am 06 Oktober 2016, 15:23:14
benutzt Du bei Dir configdb oder die fhem.cfg ?
Ich spiele auf die Frage/Anmerkung an, welche Spezialtrick in der Anleitung gestellt hat...
Ich habe den Plan auf ConfigDB und DBLog umzustellen. Angefangen habe ich jetzt einmal mit DBLog und möchte danach auf ConifgDB umstellen. Das heißt also, dass derzeit noch die fhem.cfg in Verwendung ist.

lg
fireb

CoolTux

Beim testen hast Du Dich da von einem entfernten Host angmeldet? Wenn ja dann hat Dein User kein Recht für eine lokale Anmeldung auf die DB.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

fireb

Zitat von: CoolTux am 06 Oktober 2016, 15:38:23
Beim testen hast Du Dich da von einem entfernten Host angmeldet? Wenn ja dann hat Dein User kein Recht für eine lokale Anmeldung auf die DB.

Beides, hat jedes mal funktioniert über das MySQL Programm.
Ich habe jetzt das FHEMUSER Passwort auf 12341234 geändert und nun funktioniert auch damit die Verbindung. Ich gehe nun einmal davon aus, dass es wirklich an der Art des Kennworts lag bzw. keine Sonderzeichen von FHEM "verstanden" werden.

lg
fireb

DeeSPe

Ich wollte eben auch mal DBLog auf meinem Testsystem aktivieren und stoße auf selbes Problem:
"DBLog waiting for connection"

Log:

2016.10.14 02:20:00 1 : DbLog LogDb: DBLog_Push - DB Session dead! - Can't call method "ping" on unblessed reference at ./FHEM/93_DbLog.pm line 582.
2016.10.14 02:20:00 1 : DbLog LogDb: DBLog_Push - DB Session dead! - Can't call method "ping" on unblessed reference at ./FHEM/93_DbLog.pm line 582.
2016.10.14 02:20:00 1 : DbLog LogDb: DBLog_Push - DB Session dead! - Can't call method "ping" on unblessed reference at ./FHEM/93_DbLog.pm line 582.
2016.10.14 02:20:00 1 : DbLog LogDb: DBLog_Push - DB Session dead! - Can't call method "ping" on unblessed reference at ./FHEM/93_DbLog.pm line 582.
2016.10.14 02:20:00 1 : DbLog LogDb: DBLog_Push - DB Session dead! - Can't call method "ping" on unblessed reference at ./FHEM/93_DbLog.pm line 582.


list vom Device:

Internals:
   CONFIGURATION ./db.conf
   DBMODEL    MYSQL
   DEF        ./db.conf .*:.*
   NAME       LogDb
   NR         27
   NTFY_ORDER 50-LogDb
   PID        713
   REGEXP     .*:.*
   STATE      waiting for connection
   TYPE       DbLog
   dbconn     mysql:database=fhem;host=192.168.1.2;port=3306
   dbuser     fhemuser
   Readings:
     2016-10-14 02:15:02   state           waiting for connection
Attributes:


Zugang zur Datenbank ist getestet und funktioniert.
Alles ist up-to-date.

Woran könnte es liegen?

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

DeeSPe

Erwähnt sei noch dass es sich um eine MariaDB auf einer Synology handelt.
Verbindung von remote klappt auch auf die Datenbank mit fhemuser und fhempassword.
Nur DBLog will nicht verbinden und wirft die Fehlermeldung.

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

DeeSPe

Hab nun die libclass-dbi-mysql-perl aus dem im ersten Beitrag verlinkten Artikel nachinstalliert und nun scheint es zu laufen.

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe