Hallo zusammen,
ich habe schon ein paar Themen hier im Forum durch die das behandeln, aber leider war keins dabei das meinem Fall irgendwie gleicht.
Zur Vorgeschichte:
Vor einigen Tagen hat sich meine Fritz-Box aus irgendwelchen Gründen verabschiedet und mit diesem Ausfall fing auch mein FHEM Problem an...
Bis dahin hatte ich meinen FHEM- Server auf einem BananaPi M1 laufen der es bis dahin problemlos erledigt hat. Die längste Zeit die das Ding am Stück gewerkelt hat, waren weit über 100 Tage...
Aber seit dem FritzBox- Vorfall ist irgendwie Schluß damit. Am darauffolgenden Tag bekam ich schon meine Ersatzfritz zugeschickt und habe diese neu eingerichtet (hatte da leider keine Konfigsicherung mehr). Dabei erhielt der Banana nicht die ursprüngliche IP und ich nahm an das er sich aufgehängt hatte (Ich war der Meinung gewesen DHCP ausgeschaltet zu haben, war aber nicht der Fall).
In dem Zuge dachte ich mir das Ding mal komplett zu sichern. Also SD- Karte geklont und das BS auf der SSD ebenfalls. Als ich ihn wieder angeschlossen habe und imme rnoch nicht erreichte habe ich dann gesehen das er die falsche IP hat, was ich natürlich umgehend geändert habe.
Seitdem stürtzte er aber immer in unregelmäßigen Abständen ab - zumindest fhem, der Rest funktionierte (mosquitto server und ha-bridge liefen auch darauf).
Ich habe alles mögliche versucht um herauszufinden was nicht stimmte, habe es dann aber recht schnell gelassen, weil ich eh mit dem Gedanken spielte die Hardware aufzufrischen.
Jetzt werkelt ein RPi 3B+ für fhem ohne zusätliche Software. Den mosquitto und die ha-bridge habe ich auf einen alten RPi 2 umgezogen...
Aber auch jetzt stürtzt fhem in diesen unregelmäßigen Abständen ab!
Ich habe eine komplette Debian minimal über noobs installiert und alle von mir benötigten Bibliotheken (für MQTT, FritzBox, usw.). Dann ein Backup auf dem BananaPi gemacht und dieses dann auf den RPi3 gezogen. Ich wollte erstmal nicht alles wieder von vorne anlegen, da ich eine ganze Menge an Geräten habe...
Die Verbindungen zu meinem HMLan und UART auf dem RPi2 nimmt er ganz normal auf, MQTT läuft einwandfrei und auf die Fritz kann ich auch ohne Probleme "zugreifen".
Jetzt hoffe ich auf eure Hilfe, da ich keinen blassen Schimmer habe wie ich dem Übeltäter auf die Spur kommen kann... In den Logs ist nicht viel zu finden, ausser das Perfmon folgendes meldet:
2019.03.22 20:06:47.641 1: Perfmon: possible freeze starting at 20:04:22, delay is 145.641
...
2019.03.23 08:41:54.876 1: Perfmon: possible freeze starting at 08:37:40, delay is 254.876
In dem Fall habe ich es recht schnell festgestellt das fhem wieder hängt. Vorher kamen schon mal 3-5000 Sekunden vor...
Apptime sagt in meinen Augen auch nicht viel aus...
name function max count total average maxDly avgDly TS Max call param Max call
Pi_HmUART HMUARTLGW_Read 150 2272 22668.72 9.98 0.00 0.00 23.03. 08:43:40 HASH(Pi_HmUART)
tmr-__ANON__ HASH(0x3810660) 123 53 5060.57 95.48 18.21 11.59 23.03. 08:53:07 HASH(ej3)
og_wz_Couchrollo CUL_HM_Set 102 9 234.85 26.09 0.00 0.00 23.03. 08:44:00 HASH(og_wz_Couchrollo); og_wz_Couchrollo; off
tmr-CUL_HM_respPendTout respPend 101 5 205.95 41.19 1.55 0.93 23.03. 08:42:50 respPend:4BCFE6
myBroker MQTT::Read 101 125 5433.93 43.47 0.00 0.00 23.03. 08:45:07 HASH(myBroker)
HMLAN01 HMLAN_Read 95 565 3327.58 5.89 0.00 0.00 23.03. 09:01:43 HASH(HMLAN01)
WaschmaschineWattSet notify_Exec 81 159 4696.00 29.53 0.00 0.00 23.03. 08:53:07 HASH(WaschmaschineWattSet); HASH(Sonoff_Pow)
tmr-CUL_HM_readStateTo sUpdt 73 3 180.17 60.06 0.94 0.86 23.03. 08:42:47 sUpdt:og_ez_rauchmelder
tmr-at_Exec HASH(0x27a00b0) 63 53 1374.79 25.94 36.50 1.91 23.03. 08:42:59 HASH(Time_Update)
Time_FP dummy_Set 49 53 621.26 11.72 0.00 0.00 23.03. 08:42:59 HASH(Time_FP); Time_FP; 08:42
tmr-watchdog_Trigger HASH(0x466b268) 45 1 45.99 45.99 1.48 1.48 23.03. 09:12:52 HASH(og_ar_PIR_off)
og_ar_PIR_on notify_Exec 44 8 71.08 8.89 0.00 0.00 23.03. 09:12:05 HASH(og_ar_PIR_on); HASH(og_ar_PIR)
og_ar_Licht MQTT::DEVICE::Set 43 19 108.23 5.70 0.00 0.00 23.03. 09:12:52 HASH(og_ar_Licht); og_ar_Licht; OFF
KODI XBMC_Read 42 75 1380.59 18.41 0.00 0.00 23.03. 09:21:15 HASH(KODI)
WEB_192.168.0.104_58827 FW_Notify 35 2102 3190.29 1.52 0.00 0.00 23.03. 09:25:19 HASH(WEB_192.168.0.104_58827); HASH(og_kl_bad_Fensterkontakt)
HM_4E931B_Climate CUL_HM_Set 32 15 398.47 26.56 0.00 0.00 23.03. 09:03:35 HASH(HM_4E931B_Climate); HM_4E931B_Climate; ?
HM_3C7084_Climate CUL_HM_Set 31 36 996.97 27.69 0.00 0.00 23.03. 08:59:38 HASH(HM_3C7084_Climate); HM_3C7084_Climate; ?
og_Arbeitszimmer_Fensterstand DOIF_Notify 31 2102 321.53 0.15 0.00 0.00 23.03. 09:18:40 HASH(og_Arbeitszimmer_Fensterstand); HASH(og_Arbeitszimmer_re_Fensterkontakt)
tmr-CUL_HM_qStateUpdatIfEnab sUpdt 30 1 30.81 30.81 0.82 0.82 23.03. 09:12:43 sUpdt:Schloss_Haustuere
og_Kueche_Thermostat_Clima CUL_HM_Set 30 33 780.92 23.66 0.00 0.00 23.03. 09:22:48 HASH(og_Kueche_Thermostat_Clima); og_Kueche_Thermostat_Clima; ?
og_Kleines_Bad_Thermostat_Clima CUL_HM_Set 30 32 691.74 21.62 0.00 0.00 23.03. 08:49:24 HASH(og_Kleines_Bad_Thermostat_Clima); og_Kleines_Bad_Thermostat_Clima; ?
og_bad_Thermostat_Clima CUL_HM_Set 30 32 653.37 20.42 0.00 0.00 23.03. 08:56:19 HASH(og_bad_Thermostat_Clima); og_bad_Thermostat_Clima; ?
og_Kueche_Fensterkontakt CUL_HM_Set 29 6 111.14 18.52 0.00 0.00 23.03. 09:13:52 HASH(og_Kueche_Fensterkontakt); og_Kueche_Fensterkontakt; ?
og_kl_bad_Fensterkontakt CUL_HM_Set 29 11 192.26 17.48 0.00 0.00 23.03. 09:25:19 HASH(og_kl_bad_Fensterkontakt); og_kl_bad_Fensterkontakt; ?
RauchmelderTeam01 CUL_HM_Set 29 6 96.16 16.03 0.00 0.00 23.03. 08:43:40 HASH(RauchmelderTeam01); RauchmelderTeam01; ?
Schloss_Haustuere CUL_HM_Set 29 5 117.27 23.45 0.00 0.00 23.03. 09:13:04 HASH(Schloss_Haustuere); Schloss_Haustuere; ?
og_wz_Wintergarten CUL_HM_Set 29 17 292.60 17.21 0.00 0.00 23.03. 09:35:04 HASH(og_wz_Wintergarten); og_wz_Wintergarten; ?
Garagensensor CUL_HM_Set 28 1 28.02 28.02 0.00 0.00 23.03. 09:28:50 HASH(Garagensensor); Garagensensor; ?
og_ez_Wintergarten CUL_HM_Set 27 5 78.69 15.74 0.00 0.00 23.03. 09:26:44 HASH(og_ez_Wintergarten); og_ez_Wintergarten; ?
tmr-DbLog_execmemcache HASH(0x193fab8) 26 105 2489.84 23.71 35.27 1.88 23.03. 08:43:13 HASH(DbLog)
og_sz_rauchmelder CUL_HM_Set 26 8 106.17 13.27 0.00 0.00 23.03. 08:42:48 HASH(og_sz_rauchmelder); og_sz_rauchmelder; ?
tmr-WOL_UpdateReadings HASH(0x2dd5c60) 25 3 62.43 20.81 11.88 4.90 23.03. 08:57:15 HASH(Arbeitsrechner)
tmr-WOL_UpdateReadings HASH(0x2d896e0) 20 3 57.67 19.22 29.88 10.69 23.03. 09:27:15 HASH(Server)
tmr-WOL_UpdateReadings HASH(0x47d4670) 19 3 59.07 19.69 1.27 1.15 23.03. 09:12:21 HASH(PlayStation)
tmr-CUL_HM_ActCheck ActionDetector 18 5 93.86 18.77 83.61 17.48 23.03. 09:02:06 ActionDetector
tmr-WOL_UpdateReadings HASH(0x46cefc8) 18 3 56.20 18.73 1.02 0.90 23.03. 08:57:18 HASH(Renes_TV)
og_ez_rauchmelder CUL_HM_Set 17 8 98.14 12.27 0.00 0.00 23.03. 08:43:40 HASH(og_ez_rauchmelder); og_ez_rauchmelder; ?
og_Arbeitszimmer_Fensterdummy dummy_Set 14 8 22.24 2.78 0.00 0.00 23.03. 09:18:40 HASH(og_Arbeitszimmer_Fensterdummy); og_Arbeitszimmer_Fensterdummy; lr
og_wz_Fenster_Couch CUL_HM_Set 13 6 79.55 13.26 0.00 0.00 23.03. 08:59:38 HASH(og_wz_Fenster_Couch); og_wz_Fenster_Couch; ?
og_bad_Fensterkontakt CUL_HM_Set 13 4 52.99 13.25 0.00 0.00 23.03. 08:59:38 HASH(og_bad_Fensterkontakt); og_bad_Fensterkontakt; ?
RauchmelderTeam02 CUL_HM_Set 13 4 51.99 13.00 0.00 0.00 23.03. 08:59:38 HASH(RauchmelderTeam02); RauchmelderTeam02; ?
Ich kann ein bisschen Copy/Paste und an meine Bedürfnisse anpassen, aber selbst "programmieren" kann ich leider nicht - da ist mein Gehirn nicht in der Lage zu...
Leider hapert es dann natürlich auch ein wenig bei der eigensständigen Fehlersuche.
Ich hoffe daher das Ihr mir mit dem weiteren Vorgehen ein wenig unter die Arme greifen könnt und verzeiht mir eventuell dumme Nachfragen... :-[
Also - was bracuht Ihr noch an weiteren Angaben von mir... ;)
Gruß,
Richy
Du könntest statt Perfmon/Apptime mal Freezemon versuchen. Das erzeugt ein derailliertes Log, was während eines Freezes passiert. Wenn das nicht hilft, gibt's noch die catch.* Attribute (siehe Doku) die zusätzlich Aufschluss geben können
Kurz, weil mobil
OK. Freezemon habe ich per define eingebunden. Im Forenthreat steht das man perfmon besser deaktiviert.
Wie kann ich das machen?
Perfmon aus de /FHEM Verzeichnis verschieben, z.B. nach contrib und FHEM neu starten
Kurz, weil mobil
Alles klar. Datei habe ich bei dem eben wieder aufgetretenen Freeze verschoben und wurde nach fhem- Neustart natürlich nicht mitgeladen.
Freezemon hatte dies hier als State:
2019-03-23 [Log]: s:12:39:07 e:12:49:34 f:627.204 d:tmr-perfmon_ProcessTimer(N/A)
Kann ich daraus deuten das der perfmon den freeze verursacht hat?
Aalsoooo.... :-[
Es ist immer das gleiche! Kaum schreibe ich hier oder auch woanders meine Probleme hin, schon lösen sie sich auf einmal fast von alleine...
Es war soeben rein zufällig, dass ich hier und da geschaut habe was es sein könnte, da kam meine Frau nach Hause. Per Fernbedienung die Türe geöffnet - zack - fhem bleibt hängen!
Nach einem restart probierte ich das dann direkt noch mal. Türe abgeschlossen - fhem hängt.
Nach dem ersetzen des HM-SEC-KEY-S durch einen Dummy und löschen des Devices stellte ich dann fest, dass selbst beim Lock oder unlock des Dummy's fhem stehen bleibt. Letztlich habe ich ein DOIF für meine Videoüberwachung ermittelt das fhem zum freezen brachte. Aus einem mir noch nicht bekannten Grund, funktioniert die Aktivierung/Deaktivierung der Überwachung nicht mehr richtig und beim Aufruf der Funktion "GetFileFromURLQuiet" bleibt fhem einfach stehen.
Keine Ahnung warum das auf einmal nicht mehr geht, wo es doch vorher ohne Probleme ging... Und vor allem ein riesen Zufall das es mit dem Ableben meiner Fritz aufgetreten ist.
Jedenfalls habe ich jetzt perfmon durch freezemon ersetzt, was ich jetzt auch ohne weiteres deaktiveren kann ohne Dateien zu verschieben. ;) Aber erst mal lasse ich es an - vielleicht findet sich ja noch das ein oder andere Problemkind (Ausser fhem bleibt noch aus einem anderen Grund hängen - aber bis jetzt läuft es reproduzierbar weiter).
Vielen Dank für Deine Hilfe KernSani!
Nen fetten Gruß,
Richy ;D
Nach nun drei Tagen ohne nennenswerte Freeze's kann ich wohl feststellen das ich den Haupttäter gefunden habe.
Das einzige was mir noch kurz Kopfzerbrechen bereitet hat, war ein dauerndes Connect/Disconnect meines HM-LAN Adapters. Da es hierzu aber ohne Ende Beiträge zu gibt habe ich schnell festgestellt, dass ich, unter anderem, noch auf Firmware 0.964 unterwegs war... Firmware Update gemacht -> Ruhe im Karton..! ;D 8)
Somit - Probleme gelöst.
Vielen Dank nochmal an alle hier, die tatkräftig mit Hilfestellungen und Lösungsansätzen dienen. :)
Gruß,
Richy