Bitte um Hilfe: Logfiles bleiben nach Update 5.8 leer

Begonnen von yalgoo, 27 Februar 2017, 22:01:08

Vorheriges Thema - Nächstes Thema

yalgoo

Hallo ich habe 15 1-wire DS18b20 Sensoren seit 1/2 Jahr erfolgreich im Einsatz.

Alle sind wie folgt eingerichtet:
define T1 GPIO4 28-031664016fff
attr T1 model DS18B20
attr T1 room GPIO-Devices
attr T1 group 1-wire
attr T1 icon temp_temperature
define FileLog_T1 FileLog ./log/T1-%Y-%W.log T1
attr FileLog_T1 logtype text

Seit dem Update gestern bleiben die Logfiles leer. Die Temperatur wir im Device ganz normal angezeigt und bei Seite neu laden aktualisiert.
Nur wenn ich unter Device Overview die Ansicht aktualisiere, werden neue Werte ausgelesen und auch im Logfile gespeichert. Sonst bleibt das Logfile leer.

Wer hat eine Idee, woran das liegen könnte?

cat /sys/bus/w1/devices/28-031664016fff/w1_slave
96 01 4b 46 7f ff 0c 10 a0 : crc=a0 YES
96 01 4b 46 7f ff 0c 10 a0 t=25375

$ lsmod | grep w1
ergibt:
w1_therm                3584  0
w1_gpio                 3657  0
wire                   25219  2 w1_gpio,w1_therm

Prof. Dr. Peter Henning

Vorschlag: Commandref zu FileLog lesen und etwas über reguläre Ausdrücke lernen.

LG

pah

Thorsten Pferdekaemper

Hi pah,
ich habe das gerade mal bei mir ausprobiert. Wenn man als Regex im Filelog einen Devicenamen angibt, dann wird einfach alles zu diesem Device geloggt. Ich glaube also nicht, dass es an einer fehlerhaften Regex liegt. Oder wie hattest Du das gemeint?
Gruß,
   Thorsten
FUIP

Prof. Dr. Peter Henning

Stimmt schon - aber das will er ja gar nicht, sondern nur die Temperatur.

Der Fehler scheint im GPIO4 zu liegen, das keine zyklischen Abfragen (mehr) macht.

LG

pah

Thorsten Pferdekaemper

Zitat von: Prof. Dr. Peter Henning am 02 März 2017, 12:20:10
Stimmt schon - aber das will er ja gar nicht, sondern nur die Temperatur.
Du hast anscheinend eine andere Glaskugel als ich.
FUIP

Prof. Dr. Peter Henning


KölnSolar

aber beide etwas getrübt  ;D

ZitatNur wenn ich unter Device Overview die Ansicht aktualisiere, werden neue Werte ausgelesen und auch im Logfile gespeichert. Sonst bleibt das Logfile leer.
heißt, dass der internaltimer keine Werte mehr abruft, also kein periodisches polling, kein event, kein Logging
Das liegt weder an FileLog, noch am GPIO4.
Einzige Idee zur Fehlerbehebung: Reboot(sofern nicht schon probiert)
Grüße Markus
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

Thorsten Pferdekaemper

Zitat von: KölnSolar am 02 März 2017, 18:24:12heißt, dass der internaltimer keine Werte mehr abruft, also kein periodisches polling, kein event, kein Logging
Da gibt es doch noch einen Thread mit Problemen in periodischen "at". Das könnte verwandt sein.
Gruß,
   Thorsten
FUIP

CoolTux

Wenn dann Update machen. Rudi hatte das die Tage gefixt.
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

Prof. Dr. Peter Henning

Zitataber beide etwas getrübt
Der letzte, der das zu mir gesagt hat, fristet jetzt sein Leben als Kakerlake.

LG

pah

yalgoo

#10
Ich habe meinen RPi komplett noch mal neu aufgesetzt.  :'(
Kernel: 4.4.48-v7+

Die fhem.cfg enthält jetzt nur den 1-wire DS18B20

define T1 GPIO4 28-031664016fff
attr T1 model DS18B20
attr T1 room GPIO-Devices
define FileLog_T1 FileLog ./log/T1-%Y-%W.log T1:temperature.*
attr FileLog_T1 logtype text


Die Messwerte werden wieder nur manueller Aktualisierung der Browseranzeige in den Logfile geschrieben:

2017-03-02_22:18:31 T1 temperature: 32.312
2017-03-02_22:19:26 T1 temperature: 32.375
2017-03-02_22:19:31 T1 temperature: 32.437
2017-03-02_22:19:33 T1 temperature: 32.437
2017-03-02_22:19:35 T1 temperature: 32.437
2017-03-02_22:19:37 T1 temperature: 32.437
2017-03-02_22:47:57 T1 temperature: 32.25

Das selbständige Logen funktioniert leider immer noch nicht.
Alle 15 1-wire Sensoren werden erkannt und geben eine plausible Temperatur über die Konsole aus.
Nur der Filelog tut nicht mehr seit dem Update auf 5.8 via update

yalgoo

#11
Zitat von: Prof. Dr. Peter Henning am 02 März 2017, 09:27:48
Vorschlag: Commandref zu FileLog lesen und etwas über reguläre Ausdrücke lernen.

LG

pah

Es hat ja alles funktioniert. Mein 2ter RPi ohne Update auf 5.8 läuft ohne Probleme.

Logfile:
2017.03.02 23:14:24 1: PERL WARNING: readline() on closed filehandle DATA at ./FHEM/58_GPIO4.pm line 132.
2017.03.02 23:14:24 1: PERL WARNING: Use of uninitialized value in pattern match (m//) at ./FHEM/58_GPIO4.pm line 132.

rudolfkoenig

ZitatNur wenn ich unter Device Overview die Ansicht aktualisiere, werden neue Werte ausgelesen und auch im Logfile gespeicher

Wie stellst du fest, dass die Daten im Logfile sind?
Sieht man die Daten, wenn man im FileLog-Detail auf text klickt?
Sieht man die Events im Event-Monitor rechtzeitig?

KölnSolar

ZitatLogfile:
2017.03.02 23:14:24 1: PERL WARNING: readline() on closed filehandle DATA at ./FHEM/58_GPIO4.pm line 132.
2017.03.02 23:14:24 1: PERL WARNING: Use of uninitialized value in pattern match (m//) at ./FHEM/58_GPIO4.pm line 132.
Einmalige Meldung ? Periodisch ? Failure-Counter im device auf 0 ? Kamen die auch vor dem neu aufsetzen ? Oder hast Du evtl. jetzt die GPIOs oder w1-therm/w1-gpio nicht richtig eingerichtet(siehe viele Threads zur Logmeldung) ? Woher stammt Deine 58_GPIO4.pm ?

Ich hab gerade mal ein update gemacht und der Fehler lässt sich bei mir nicht nachstellen  :(

Und für eins musst Du Dich langsam mal entscheiden, entweder
ZitatNur der Filelog tut nicht mehr seit dem Update auf 5.8 via
oder
ZitatDie Messwerte werden wieder nur manueller Aktualisierung der Browseranzeige in den Logfile geschrieben:

Letzteres besagt: KEIN FileLog, sondern event-Problem und da hatte ich ja schon gestern geschrieben
Zitatheißt, dass der internaltimer keine Werte mehr abruft, also kein periodisches polling, kein event, kein Logging
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

yalgoo

#14
Zitat von: rudolfkoenig am 03 März 2017, 06:39:59
Wie stellst du fest, dass die Daten im Logfile sind?
Sieht man die Daten, wenn man im FileLog-Detail auf text klickt?
Sieht man die Events im Event-Monitor rechtzeitig?


Ja, die wenn ich im FileLog auf text klicke sind die Messwerte vorhanden. Es werden jedoch nur Messwerte geschrieben, wenn ich unter DeviceOverview den Name des Device anklicke oder die Browseransicht aktualisiere.
Der Code im fhem.cfg ist:

define T1 GPIO4 28-031664016fff
attr T1 model DS18B20
attr T1 room GPIO-Devices
define FileLog_T1 FileLog ./log/T1-%Y-%W.log T1:temperature.*
attr FileLog_T1 logtype text
define RPi GPIO4 BUSMASTER


Sonst habe ich zum Neuaufsetzen:

mit sudo raspi-config 1-wire aktiviert

/boot/config.txt mit
# activating 1-wire with pullup
dtoverlay=w1-gpio-pullup
erweitert

nach dem 1ten Update habe ich das Modul 58_GPIO4.pm kopiert
sudo cp /opt/fhem/contrib/58_GPIO4.pm /opt/fhem/FHEM/

und danach mit dem zuvor beschriebenen Code de nSensor definiert.

mittels ls /sys/bus/w1/devices/  werden alle angeschlossen Sensoren angezeigt
und
cat /sys/bus/w1/devices/28-031664016fff/w1_slave
erzeugt diese Ausgabe
54 02 4b 46 7f ff 0c 10 ba : crc=ba YES
54 02 4b 46 7f ff 0c 10 ba t=37250

... und noch 3 Screenshots
- Event monitor
- Def Device T1
- Def LogFile T1
- Ausgabe von sudo vcdbg log msg
- Def RPi Busmaster, bei klick auf RPi oder Browser aktualisieren wir das failures Reading um 1 hochgezählt