Define dblog / Fhem stürzt ab

Begonnen von mrpointblue, 19 März 2017, 22:49:04

Vorheriges Thema - Nächstes Thema

mrpointblue

Hallo,
nach Konfiguration meines MySQL Servers wollte ich nun dblog in fhem hinzufügen.

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

Leider stürzt fhem sofort ab und ist erst wieder nach start in der console erreichbar.
Leider gibt es keinen Log Eintrag im fhem.

Hat jemand eine Idee?
Ich verzweifle.

Danke
1x Raspberry für Fhem, 1x Raspberry für Homebridge
Diverse Z-Wave Geräte, Philips-Hue, Ikea Tradfri, sonnenBatterie, Logitech Harmony, Alexa & Siri gekoppelt

Otto123

#1
Hi,

ich habe keine Ahnung von dblog, aber hast Du ansatzweise in der Doku gelesen?
https://fhem.de/commandref_DE.html#DbLog

Und vor allem den angepinnten Beitrag -> [Workshop] Umstieg von fhem.cfg auf configDB

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

kumue


mrpointblue

Ja bin exakt vorgegangen.
Hab auch schon alles im Forum durchsucht.

Eigentlich kann man nicht wirklich viel falsch machen.

In der Doku ist es so beschrieben wie ich es durchgeführt habe.

@Otto: Verstehe nicht was die configDB damit zu tun hat. Bei MySQL verwende ich die db.conf die auch bei define mit  angegeben wird

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

--------------------------------------

Wenn ich aber die Umstellung auf configDB durchführe kommt folgender Fehler:

Can't open perl script "fhem.pl": No such file or directory
1x Raspberry für Fhem, 1x Raspberry für Homebridge
Diverse Z-Wave Geräte, Philips-Hue, Ikea Tradfri, sonnenBatterie, Logitech Harmony, Alexa & Siri gekoppelt

kumue

aus welchen verzeichnis startest du perl fhem.pl configDB ?

Otto123

Zitat von: mrpointblue am 19 März 2017, 23:18:21

@Otto: Verstehe nicht was die configDB damit zu tun hat. Bei MySQL verwende ich die db.conf die auch bei define mit  angegeben wird

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

sorry das mit der configDB war mein Fehler, falsch gelesen.

Aber alleine dies  ./contrib/dblog/db.conf ist für mich höchst zweifelhaft. Es handelt sich hierbei um die die Beispieldatei, die man als Template an einen anderen Ort kopiert, dort bearbeitet und dann verwendet.

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

kumue

Zitat von: Otto123 am 19 März 2017, 23:46:54
Aber alleine dies  ./contrib/dblog/db.conf ist für mich höchst zweifelhaft. Es handelt sich hierbei um die die Beispieldatei, die man als Template an einen anderen Ort kopiert, dort bearbeitet und dann verwendet.

ich denke schon, daß er die datei entsprechend "entkommentiert" hat.

Otto123

Zitat von: kumue am 19 März 2017, 23:50:22
ich denke schon, daß er die datei entsprechend "entkommentiert" hat.
Ich denke nicht, dass man die im contrib Ordner liegen lassen sollte.  :-X
Aber jeder wie er will...
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

kumue


Otto123

Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Benni

Zitat von: Otto123 am 19 März 2017, 23:52:10
Ich denke nicht, dass man die im contrib Ordner liegen lassen sollte.  :-X
Aber jeder wie er will...

Na ja, funktionieren sollte es auch, wenn die Datei in contrib liegen bleibt.
Passieren kann der Datei dort eigentlich auch erst mal nix, da contrib ja nicht durch update aktualisiert wird.

Es könnte aber sein, dass dem user fhem dort, warum auch immer, die nötigen Rechte auf die Datei fehlen. Darüber könnte mal ein

ls -l ./contrib/dblog/db.conf

in der shell Aufschluß geben.
Nichts desto trotz würde ich die Datei auch nicht direkt aus contrib heraus verwenden, sondern besser direkt ins fhem Verzeichnis kopieren (Stichwort backup).

@mrpointblue:

Hast du denn die, für MySQL zusätzlich benötigten perl-Bibliotheken nach Wiki-Anleitung installiert?


apt-get install mysql-server mysql-client libdbd-mysql libdbd-mysql-perl


Das ist die Installation, wie sie unter Ubuntu, bzw. unter debian funktionieren sollte. Andernfalls kannst du die auch mittels CPAN installieren (google hilft dir ggf. dabei ;) )

Wenn die Bibliotheken fehlen, sollte das im FHEM-Log aber drin stehen, wenn sich das Modul DbLog nicht laden lässt, bzw. müsste eigentlich schon beim define eine entsprechende Fehlermeldung kommen und kein Absturz.

A propos: Wenn nichts im Log steht, könntest vor dem define und dem damit verbundenen Absturz auch mal noch

attr global verbose 5

setzen, dann steht wahrscheinlich etwas mehr drin.


Zitat von: mrpointblue am 19 März 2017, 23:18:21
Can't open perl script "fhem.pl": No such file or directory

Da verstehe ich nicht ganz. Der Fehler kann ja nicht beim define von dblog auftreten, sondern nur beim starten von fhem aus der shell heraus.
Wie rufst du denn fhem.pl auf, damit diese Fehlermeldung kommt? Und vor allem von wo aus und als welcher user? Befindest du dich beim Aufruf denn im richtigen Verzeichnis (Bei debian ist das für fhem normalerweise /opt/fhem)?

Ganz schön viele Fragen.
Bin auch mal auf die Auflösung(en) gespannt! ;)

Otto123

Zitat von: Benni am 20 März 2017, 07:11:19
Na ja, funktionieren sollte es auch, wenn die Datei in contrib liegen bleibt.
Passieren kann der Datei dort eigentlich auch erst mal nix, da contrib ja nicht durch update aktualisiert wird.
Moin,

klar habt ihr alle Recht, kann man machen. Allerdings mutmaße ich mal, da alle Beispiele sowohl in der commandref als auch im Wiki von einer db.conf im Ordner /opt/fhem/ ausgehen (was aus meiner Sicht auch Sinn macht)
-> nur die Hälfte , nur überflogen oder Doku gar nicht gelesen.
Und ob die Datei dann auch editiert wurde oder einfach noch im Originalzustand ist?

In meinem falsch verlinkten Workshop steht explizit drin, das man die db.conf kopieren soll.  8)

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Benni

Zitat von: Otto123 am 20 März 2017, 07:57:48
In meinem falsch verlinkten Workshop

Eben, der hat ja mit dblog erst mal nix zu tun, sondern gehört zu configDB wieso sollte den der TE gelesen haben?

Im Wiki zu DbLog wird übrigens tatsächlich die Config-Datei direkt von contrib aus verwendet  :o
(Sollte man vielleicht mal umschreiben?)

Wie auch immer. Das ist ja jetzt nur Rechthaberei  ;D und bringt uns und den TE nicht weiter. Warten wir mal die Antwort(en) ab.

mrpointblue

Hallo,
schonmal vielen Dank.

Ob die Datei im contrab liegt ist ja erstmal egal.
Hab das aber trotzdem direkt versucht, gleiches Ergebnis, Fhem stürzt sofort ab.
Wenn dann was nicht stimmt würde es im Log einen Fehler geben, oder bin ich da falsch?

MySQL läuft auf einem Server bzw. NAS und ist in der config entsprechend hinterlegt.

Die Zusätzlichen Bibliotheken im MySQL wurden angelegt selbst wenn dort etwas falsch wäre, sollte auch einen Fehlermeldung kommen und nicht ein kompletter Absturz bzw. ist es ja nichtmal möglich überhaupt erst eine Verbindung aufzubauen durch den Absturz.

Bei der abfrage der Rechte kommt folgendes. der db.conf
-rwxrw-rw- 1 pi pi 134 Mar 15 21:44 ./contrib/dblog/db.conf

attr global verbose 5
Bringt leider nichts, er stürzt sofort ab und schreibt nichts ins Log.

Waren ja noch ne menge Antworten. Danke
1x Raspberry für Fhem, 1x Raspberry für Homebridge
Diverse Z-Wave Geräte, Philips-Hue, Ikea Tradfri, sonnenBatterie, Logitech Harmony, Alexa & Siri gekoppelt

Benni

Zitat von: mrpointblue am 20 März 2017, 08:35:45
Bei der abfrage der Rechte kommt folgendes. der db.conf
-rwxrw-rw- 1 pi pi 134 Mar 15 21:44 ./contrib/dblog/db.conf

Wie vermutet: Der user "fhem" hat keine Rechte auf die Datei. Fhem läuft normalerweise im Kontext des Users "fhem" nicht des Users "pi"

Du musst die Rechte anpassen. Etwa so:


sudo chown fhem:dialout ./contrib/dblog/db.conf


eventuell auch noch ein


sudo chmod 644 ./contrib/dblog/dblog.conf