Hauptmenü

FHEM starten nicht mehr

Begonnen von SMarcHome, 06 Dezember 2019, 11:30:41

Vorheriges Thema - Nächstes Thema

SMarcHome

Hallo!

Ich habe seit längerem FHEM in einem Docker Container mit einem nanoCUL und eingen HomeMatic Geräten laufen.

Vorgestern habe ich das CentOS des Docker-Hosts (ein APU Board) von 7.6 auf 7.7. upgedatet. Danach lief auch (auch nach Neustart) FHEM meines Erachtens fehlerfrei. Seit dem nächsten Morgen leider nicht mehr.

"docker ps" zeigte "(unhealthy)", wenn ich neu starte, steht da sehr lange "(starting)", dann wieder "(unhealthy)".

Im Log hatte ich am Morgen des Ausfalls folgende Meldungen:
Zitat
fhem-2019-12.log:2019.12.05 04:28:58.662 3: CUL1: Unknown code A0C4886702F28AC00000000A13B42, help me!
fhem-2019-12.log:2019.12.05 04:28:58.808 3: CUL1: Unknown code A0F1B86104F08BA0000000A9CD50E02000C, help me!
fhem-2019-12.log:2019.12.05 05:52:59.778 3: CUL1: Unknown code A0F4986104F08BA0000000A9CD30E000009, help me!
fhem-2019-12.log:2019.12.05 05:52:59.933 3: CUL1: Unknown code A0F9086105130E60000000AA8D309450004, help me!
fhem-2019-12.log:2019.12.05 06:30:40.357 3: CUL1: Unknown code A0FDC8610502B7F0000000A88DB0E0000FC, help me!
fhem-2019-12.log:2019.12.05 06:30:40.671 3: CUL1: Unknown code A0F5086104FC80D0, help me!
fhem-2019-12.log:2019.12.05 08:39:34.571 3: CUL1: Unknown code A0F8686104F08BA0000000A24B90E00400E, help me!
fhem-2019-12.log:2019.12.05 09:18:29.681 3: CUL1: Unknown code A1492845E4AA14A00000081A662000798009A0933FD24, help me!
fhem-2019-12.log:2019.12.05 09:18:29.909 3: CUL1: Unknown code A0F9A86104F08BA0000000A24AF0E00400D, help me!
fhem-2019-12.log:2019.12.05 09:18:29.984 3: CUL1: Unknown code A0F9286104FC80D0000000A88B50E00002B, help me!
fhem-2019-12.log:2019.12.05 16:53:48.157 3: CUL1: Unknown code A0CD9867056C29500000000EC2D21, help me!
fhem-2019-12.log:2019.12.05 16:53:48.254 3: CUL1: Unknown code A160586104F167B0000000A88A90E059C0313240813CC2228, help me!
fhem-2019-12.log:2019.12.05 16:53:48.446 3: CUL1: Unknown code A0F038610511C270000000, help me!
fhem-2019-12.log:2019.12.05 18:34:22.063 3: CUL1: Unknown code A0C01867056C29500000000E62D1D, help me!
fhem-2019-12.log:2019.12.05 18:34:22.133 3: CUL1: Unknown code A0C6F867056C15000000000E32CFE, help me!

Da die Codes ständig wechseln, handelt es sich wohl kaum um echte, unbekannte Devices, oder?
Ich ging davon aus, dass der CUL (oder die Kommunikation) fehlerhaft ist. Mehrere Neustarts haben nicht geholfen.

Ich habe auch meinen alten Busware CUL ausprobiert, keine Reaktion.

Beim Neustart bleibt FHEM einfach hängen. Gibts eine Möglichkeit, mehr DebugInfos beim Starten zu erhalten?
Hier ein Log von Starten:
Zitat
2019.12.06 10:40:05.908 1: Including fhem.cfg
2019.12.06 10:40:05.966 3: telnetPort: port 7072 opened
2019.12.06 10:40:06.557 3: WEB: port 8083 opened
2019.12.06 10:40:06.561 3: WEBphone: port 8084 opened
2019.12.06 10:40:06.563 3: WEBtablet: port 8085 opened
2019.12.06 10:40:06.753 2: eventTypes: loaded 930 events from ./log/eventTypes.txt
2019.12.06 10:40:06.838 3: Opening CUL1 device /dev/ttyACM0
2019.12.06 10:40:06.923 3: Setting CUL1 serial parameters to 9600,8,N,1
2019.12.06 10:40:07.031 3: CUL1: Possible commands: ABbCeFGhiKkLlMmNRTtUuVWXxYZ
2019.12.06 10:40:07.035 3: CUL1 device opened
2019.12.06 10:40:07.040 2: Switched CUL1 rfmode to HomeMatic
2019.12.06 10:40:07.753 1: PERL WARNING: Useless use of hash element in void context at ./FHEM/10_CUL_HM.pm line 4069, <$fh> line 61.
2019.12.06 10:40:09.693 1: PERL WARNING: "my" variable $sec masks earlier declaration in same scope at ./FHEM/98_HKVENT.pm line 510, <$fh> line 730.
2019.12.06 10:40:09.693 1: PERL WARNING: "my" variable $min masks earlier declaration in same scope at ./FHEM/98_HKVENT.pm line 510, <$fh> line 730.
[mehrere derartige Meldungen, Ursache in Skripts von mir ist klar]
2019.12.06 10:40:09.716 3: get ci_Heizung_Clima regVal decalcWeekday : Value not captured:ci_Heizung_Clima - decalcWeekday
2019.12.06 10:40:09.717 3: get ra_Heizung_Clima regVal decalcWeekday : Value not captured:ra_Heizung_Clima - decalcWeekday
[mehrere derartige Meldungen, Ursache in Skripts von mir ist klar]
2019.12.06 10:40:09.722 1: Including ./log/fhem.save
2019.12.06 10:40:09.811 3: bad reading name KG_Gäste (contains not A-Za-z/\d_\.- or is too long)
2019.12.06 10:40:09.813 3: bad reading name 0 (contains not A-Za-z/\d_\.- or is too long)
2019.12.06 10:40:09.828 3: bad reading name 0 (contains not A-Za-z/\d_\.- or is too long)
[mehrere derartige Meldungen, Ursache in Skripts von mir ist klar]
2019.12.06 10:40:10.130 3: Device DBoxA added to ActionDetector with 000:10 time
2019.12.06 10:40:10.152 3: Device Tuer_Bad added to ActionDetector with 000:50 time
2019.12.06 10:40:10.207 3: Device Waschmaschine added to ActionDetector with 000:10 time
2019.12.06 10:40:10.229 3: Device bd_Fenster added to ActionDetector with 002:50 time
[mehrere derartige Meldungen]
2019.12.06 10:40:12.187 3: Device wh_SENS_TH added to ActionDetector with 000:10 time
2019.12.06 10:40:12.235 3: Device wz_SENS_TH added to ActionDetector with 000:10 time
2019.12.06 10:40:12.273 1: usb create starting
2019.12.06 10:40:12.709 1: usb create end
2019.12.06 10:40:12.713 0: Featurelevel: 5.9
2019.12.06 10:40:12.714 0: Server started with 123 defined entities (fhem.pl:18877/2019-03-12 perl:5.024001 os:linux user:fhem pid:102)

FHEM reagiert nicht auf Web-Requests, der health-check scheint auch zu hängen. Nach mehreren Minuten "stapeln" sich die Prozesse im Container:
Zitat
apu:/miegel/fhem/log # docker exec FHEM ps aux
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.1  0.0  19776  3332 ?        Ss   10:40   0:05 /bin/bash /entry.sh start
fhem       102 10.5  1.3 122136 55200 ?        S    10:40   4:57 perl fhem.pl fhem.cfg
root       146  0.0  0.0   4292   740 ?        Ss   10:40   0:00 /bin/sh -c /health-check.sh
root       151  0.0  0.0  19640  3396 ?        S    10:40   0:00 /bin/bash /health-check.sh
root       155  0.0  0.0  19640  2488 ?        S    10:40   0:00 /bin/bash /health-check.sh
fhem       156  0.0  0.3  51076 13704 ?        S    10:40   0:00 perl fhem.pl 7072 jsonlist2 TYPE=FHEMWEB:FILTER=TEMPORARY!=1
root       235  0.0  0.0   4292   708 ?        Ss   10:40   0:00 /bin/sh -c /health-check.sh
root       240  0.0  0.0  19640  3400 ?        S    10:40   0:00 /bin/bash /health-check.sh
root       244  0.0  0.0  19640  2512 ?        S    10:40   0:00 /bin/bash /health-check.sh
fhem       245  0.0  0.3  51076 13480 ?        S    10:40   0:00 perl fhem.pl 7072 jsonlist2 TYPE=FHEMWEB:FILTER=TEMPORARY!=1
root       324  0.0  0.0   4292   764 ?        Ss   10:41   0:00 /bin/sh -c /health-check.sh
root       330  0.0  0.0  19640  3268 ?        S    10:41   0:00 /bin/bash /health-check.sh
root       334  0.0  0.0  19640  2432 ?        S    10:41   0:00 /bin/bash /health-check.sh
fhem       335  0.0  0.3  51076 13604 ?        S    10:41   0:00 perl fhem.pl 7072 jsonlist2 TYPE=FHEMWEB:FILTER=TEMPORARY!=1
root       414  0.0  0.0   4292   712 ?        Ss   10:41   0:00 /bin/sh -c /health-check.sh
root       419  0.0  0.0  19640  3392 ?        S    10:41   0:00 /bin/bash /health-check.sh
root       423  0.0  0.0  19640  2512 ?        S    10:41   0:00 /bin/bash /health-check.sh
fhem       424  0.0  0.3  51076 13684 ?        S    10:41   0:00 perl fhem.pl 7072 jsonlist2 TYPE=FHEMWEB:FILTER=TEMPORARY!=1
root       502  0.0  0.0   4292   724 ?        Ss   10:42   0:00 /bin/sh -c /health-check.sh
root       508  0.0  0.0  19640  3272 ?        S    10:42   0:00 /bin/bash /health-check.sh
root       512  0.0  0.0  19640  2428 ?        S    10:42   0:00 /bin/bash /health-check.sh
fhem       513  0.0  0.3  51056 13532 ?        S    10:42   0:00 perl fhem.pl 7072 jsonlist2 TYPE=FHEMWEB:FILTER=TEMPORARY!=1
[ganz viele folgend]

Habt Ihr einen Tipp für mich, was hängt?
SELINUX habe ich testweise auch schon ausgemacht, ohne Erfolg...


Achja, den aktuellen Docker-Container fhem/fhem:latest habe ich auch schon ausprobiert, genau das gleiche Bild...
(da gibts übrigens eine Fehlermeldung im entry.sh -Skript... da steht nach vielen sinnvollen Ausgaben irgendwann irgendwas wie
Zitat
sh:1 echo: echo: IO Error
oder so ähnlich)


Danke,
Marc