Hallo liebes Forum,
ich hoffe, dass ich diese Frage hier richtig platziert habe. Ich bin zwar kein wirklicher fhem-Anfänger, aber doch in Unix perl nicht so richtig bewander. Und weder Handbuchstudium noch Google-Suche konnten mir helfen, hoffentlich jemand hier.
Ich habe das Problem, dass mein logfile leer bleibt. Vorangegangen war eine Umstellung von monats- auf wochenweise Logfiles. Vorher war das Loggen zuverlässig, aber die monatlichen Files waren zu unübersichtlich, daher die Änderung.
Der Eintrag bei 'currentlogfile' ist korrekt: ./log/fhem-2014-33.log. Die Datei existiert auch, hat aber 0 Byte. (Das erkenne ich aber nur im NAS-Fenster der fritzbox-Oberfläche, weil ich nicht weiß, wie ich in OSX auf das Fritzbox-Dateisystem zugreife.)
Mein fhem ist aktuell läuft auf einer Fritzbox 7390 mit aktueller firmware.
Hat jemand einen Tipp, was ich machen kann? So ein fhem-Blindflug ist nicht schön...
Ich wuerde im Event Monitor oder per inform timer schauen, ob die gewuenschten Events kommen. Wenn ja, dann pruefen, ob das FileLog-RegExp passt. Wenn das auch, dann ist vermutlich der Speicherplatz nicht in Ordnung. Wenn das alles ausgeschlossen werden kann, dann bitte ich ein paar Events und die FileLog Definition uns mitzuteilen, damit wir es nachstellen koennen.
Hallo Rudolf,
danke für die Antwort, vom König persönlich 8)
Eventmonitor - das heißt beim Link 'Eventmonitor' in der Leiste links unten? Da kommt auch nix. Wenn ich den anklicke, habe ich eine leere Seite. Gebe ich einen Schaltbefehl im Eingabefeld ein, wird der ausgeführt, aber die Seite bleibt leer.
Deutet das auf ein größeres oder ein kleineres Problem hin?
Viele Grüße
:-) Dirk
Ich fuerchte ich habe vorher nicht gruendlich gelesen bzw. nachgedacht, und das FHEM-logfile mit einem FileLog-Datei verwechselt.
Wenn das FHEM-Logfile leer ist, dann ist entweder die Platte voll, oder fhem hat keine Schreibrechte auf die bereits erstellte Datei.
Zugriff auf dem FritzBox von OSX ist genauso wie sonst:
- auf dem FritzBox telnet aktivieren (mit dem winzigen telnet-starter-image oder mit dem angeschlossenen Telefon und Kurzwahl)
- Kommandozeilen-Fenster auf dem Client oeffnen (Terminal)
- telnet fritz.box
- FritzBox Passwort
- cd /var/InternerSpeicher/fhem
- ls -l log/fhem*
Hallo,
danke für die kleinschrittigen Hinweise. :-)
Ich bin unfallfrei bis zur letzten Zeile gekommen, aber dann klappt es nicht mehr:
# cd /var/InternerSpeicher/fhem
# ls -l log/fhem*
ls: log/fhem*: No such file or directory
#
Was mache ich falsch?
Und wie weise ich denn der Datei die richtigen Schreibrechte zu bzw. wie kann man erreichen, dass fhem diese automatisch bekommt?
Viele Grüße
:-) Dirk
Hallo,
nun wäre es Zeit ein paar Linuxbefehle zu gogglen 8)
ls -l
zeigt dir den Inhalt des Ordners an in dem du gerade bist (inkl. Rechte).
cd <Verzeichniss>
lässt dich in das Verzeichniss <Verzeichniss> wechseln
Mach doch erstmal nur ein
ls -l
und schau ob es den Ordner <log> überhaupt gibt und welche Rechte er hat.
Mit einem
cd log
wechselst du in den Ordner und dort dann nochmal
ls -l
zeigt dir Verzeichnisse und Dateien im Ordner log mit deren Rechte an.
chmod
ist der Befehl um Rechte zu ändern.
Grüße
@Puschel74: Danke für die Nachhilfe. :)
Ich kam mit den Tipps einen weiteren Schritt weiter: bis ins richtige Log-Verzeichnis.
Die Zugriffsrechte auf den Ordner log/fhem wurden korrigiert (wikipedia sei Dank):
# chmod o+w fhem
# ls -l
drwxrwxrwx 1 root root 2048 Aug 11 19:54 fhem
Und dann auch für die in Frage stehende Datei mit dem Ergebnis:
-rw-rw-rw- 1 root root 91716 Jan 31 2014 fhem-2014-33.log
Das sieht doch so aus, als hätte jeder Schreibrechte, oder nicht?
Aber leider ändert sich das Verhalten von fhem danach nicht, das log bleibt wie gehabt leer. (fhem-Neustart habe ich auch probiert.)
Wie man sieht, das Log ist nicht leer (91716 Bytes). Die Zeile
define Logfile FileLog ./log/fhem-%Y-%m.log fakelog
muss auch angepasst werden, damit man im FHEMWEB die Daten sieht.
Zitat von: rudolfkoenig am 12 August 2014, 19:18:43
Die Zeile
define Logfile FileLog ./log/fhem-%Y-%m.log fakelog
muss auch angepasst werden, damit man im FHEMWEB die Daten sieht.
Die Log-Def heißt bei mir
./log/fhem-%Y-%V.log fakelog
Ist das nicht korrekt?
Ich hatte ja gerade '%m' ersetzen wollen, um wöchentliche statt monatliche Logs zu bekommen.
Zur Größe der Datei: uff, ja, das könnte ein fauxpas sein: Ich habe verdrängt, dass ich die Datei via fritzbox-Interface hineinkopiert habe, als ich feststellte, dass sie nicht existiert :-[
Wäre es eine Option, die Datei zu löschen? Wäre fhem dann gezwungen, sie neu zu erstellen?
Sorry für so offensichtlich dumme Fragen.
Deine Definition (attr global logfile XXX) ist korrekt, aber um diese Datei in FHEMWEB anzuzeigen wird ein fake-FileLog Eintrag angelegt (mit dem Namen Logfile), und dessen Parameter muss dem attr global Parameter angepasst sein. Ist ein Trick, um Code zu sparen.
HEUREKA! Genau das war's:
Die beiden Definitionen waren verschieden, daher fand das webinterface nicht die richtige Datei.
Jetzt wird wieder munter geloggt.
VIELEN DANK!
:) Dirk