Neues Modul: 98_FREEZEMON Freezes monitoren und Verursacher identifizieren

Begonnen von KernSani, 05 Februar 2018, 23:27:22

Vorheriges Thema - Nächstes Thema

Nestor

Zitat von: KernSani am 20 Januar 2019, 17:38:28
@SenH: I don't know how well you understand German - basically the discussion above was about what happens if a lot of events are fired, Conclusion: if a lot of events are fired (because a lot of readings are updated), FHEM is busy processing all these events, which might cause a freeze. This can be avoided by setting the event-on-.* attributes, so you only get the events you're really interested in (i.e. which are needed to trigger notifies etc... or should be logged).

Thanks for the explanation KernSani. Changing event-on-change-reading from .* to state in the Weather module cleared all freezes. I'm only logging the state so this should make sense. It's also logical that the freezes happened at the beginning of the hour since all the hourly forecasts are then updated and this generates a lot of events.

Tommy82

Frage zu der fm_whitelistSub, wenn ich so eine Meldung im Log habe 2019.01.22 05:30:01.012 1: [Freezemon] myFreezemon: possible freeze starting at 05:30:00, delay is 1.01 possibly caused by: tmr-HMLAN_KeepAlive(N/A) tmr-at_Exec(Weihnachtsdeko_an_am) was muss in die Whitelist wenn ich diese zukünftig nicht mehr haben möchte, da ich die für unkritisch halte?

Danke
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

Tommy82

Zitat von: Tommy82 am 22 Januar 2019, 06:03:52
Frage zu der fm_whitelistSub, wenn ich so eine Meldung im Log habe 2019.01.22 05:30:01.012 1: [Freezemon] myFreezemon: possible freeze starting at 05:30:00, delay is 1.01 possibly caused by: tmr-HMLAN_KeepAlive(N/A) tmr-at_Exec(Weihnachtsdeko_an_am) was muss in die Whitelist wenn ich diese zukünftig nicht mehr haben möchte, da ich die für unkritisch halte?

Danke
Nur für den Fall das es untergegangen ist:-)
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

KernSani

Zitat von: Tommy82 am 24 Januar 2019, 20:22:16
Nur für den Fall das es untergegangen ist:-)
nicht untergegangen - ich habe mich nur in den letzten Tagen mit zigbee2mqtt beschäftigt und das war dann doch mehr Aufwand als erwartet ;)

Ganz kurz:
1. FHEM hat intern einen Hash, der alle anstehenden Timer enthält. Freezemon greift sich diese Timer um potentielle Verursacher von Freezes zu identifizieren. Funktionen, die nicht als Verursacher in Frage kommen (wie z.B. der HMLAN_KeepAlive, der eigentlich immer da ist) kann man an dieser Stelle bereits über das whitelist-Attribut ausschließen. D.h. diese Funktion wird nie als Verursacher aufgelistet, wenn es zum Freeze kommt, wird dieser aber geloggt (ggf. mit "no bad guy".
2. Wenn es zum Freeze kommt werden die potentiellen Verursacher gegen die ignore-Attribute geprüft und je nach Einstellung wird der Freeze dann möglicherweise ignoriert (also nicht geloggt). Das würde sich für die Weihnachtsdeko anbieten.
Grüße,
Oli
RasPi: RFXTRX, HM, zigbee2mqtt, mySensors, JeeLink, miLight, squeezbox, Alexa, Siri, ...

Tommy82

Hi,
ja das hatte ich auch so verstanden, aber was muss ich in die Whitelist jetzt eintragen?
Wenn ich
Weihnachtsdeko_an_am eintrage, taucht das trotzdem weiter im Log auf
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

KernSani

Die Weihnachtsdeko muss ins ignoreDev (siehe Pkt. 2 oben)


Kurz, weil mobil
RasPi: RFXTRX, HM, zigbee2mqtt, mySensors, JeeLink, miLight, squeezbox, Alexa, Siri, ...

Pfriemler

Mal eine generelle Frage: Wie hättet Ihr es hier gern: Probleme mit dem Freezemon selbst hier und für Hilfestellung zu Freezes einen eigenen Thread in "Sonstiges" aufmachen oder auch hier?
"Änd're nie in fhem.cfg, denn das tut hier allen weh!" *** Wheezy@Raspi(3), HMWLAN+HMUART, CUL868(SlowRF) für FHT+KS+FS20, miniCUL433, Rademacher DuoFern *** "... kaum macht man es richtig, funktioniert es ..."

Tommy82

Also irgendwie hab ich glaub ich immer noch eine "Denk blockade"  ???

Ich habe fm_ignoreDev
Weihnachtsdeko_an_am, VU_Ultimo, MQTT2_FHEM_Server, Kameras, HUE


trotzdem habe ich im Fhem Log diese Meldungen

2019.01.30 08:34:04.339 1: [Freezemon] myFreezemon: possible freeze starting at 08:33:56, delay is 8.323 possibly caused by: tmr-Calendar_Wakeup(AbfallA) tmr-MQTT2_SERVER_keepaliveChecker(MQTT2_FHEM_Server)
2019.01.30 10:34:35.009 1: [Freezemon] myFreezemon: possible freeze starting at 10:34:32, delay is 3.005 possibly caused by: tmr-BlinkCamera_PollInfo(Kameras)

Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

KernSani

RasPi: RFXTRX, HM, zigbee2mqtt, mySensors, JeeLink, miLight, squeezbox, Alexa, Siri, ...

Tommy82

Das Attribute habe ich garnicht gesetzt, also sollte es auf "All" stehen!?
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

KernSani

Hi Tommy,
default-Wert für ignoreDev ist "all", d.h. alle "möglichen Verursacher" eines Freezes müssen in der ignoreDev stehen (das ist im ersten Beispiel nicht der Fall). Im zweiten Fall sieht es so aus als müsste der Freeze eigentlich ignoriert werden - ich fürchte aber, das Leerzeichen nach dem Komma ist Schuld, dass dem nicht so ist... Nimm das bitte mal raus. Ich baue mal noch ein "trim" ins Modul ein.
Grüße,
Oli
RasPi: RFXTRX, HM, zigbee2mqtt, mySensors, JeeLink, miLight, squeezbox, Alexa, Siri, ...

KernSani

Zitat von: Pfriemler am 30 Januar 2019, 10:45:24
Mal eine generelle Frage: Wie hättet Ihr es hier gern: Probleme mit dem Freezemon selbst hier und für Hilfestellung zu Freezes einen eigenen Thread in "Sonstiges" aufmachen oder auch hier?
Hier sollten meiner Meinung nach Probleme mit dem Modul an sich diskutiert werden. Hilfestellung zu Freezes (Identifizieren der Verursacher etc...) bitte in separaten Threads
RasPi: RFXTRX, HM, zigbee2mqtt, mySensors, JeeLink, miLight, squeezbox, Alexa, Siri, ...

Tommy82

Zitat von: KernSani am 30 Januar 2019, 23:56:44
Hi Tommy,
default-Wert für ignoreDev ist "all", d.h. alle "möglichen Verursacher" eines Freezes müssen in der ignoreDev stehen (das ist im ersten Beispiel nicht der Fall). Im zweiten Fall sieht es so aus als müsste der Freeze eigentlich ignoriert werden - ich fürchte aber, das Leerzeichen nach dem Komma ist Schuld, dass dem nicht so ist... Nimm das bitte mal raus. Ich baue mal noch ein "trim" ins Modul ein.
Grüße,
Oli

Hi,
ich habe mal ein update gemacht und auch die Leerstellen entfernt, aber trotzdem noch diese Meldungen im Log
2019.02.03 03:18:32.665 1: [Freezemon] myFreezemon: possible freeze starting at 03:18:31, delay is 1.662 possibly caused by: tmr-BlinkCamera_PollInfo(Kameras) tmr-MQTT2_SERVER_keepaliveChecker(MQTT2_FHEM_Server)

Wenn meine definition in freezemon richtig ist, dürften die doch nicht mehr aufschlagen!?

Internals:
   FUUID      5c48d22e-f33f-f412-186b-0107db6ad27425fa
   NAME       myFreezemon
   NR         388
   NTFY_ORDER 99-myFreezemon
   STATE      s:12:17:48 e:12:17:50 f:2.578 d:no bad guy found :-(
   TYPE       freezemon
   VERSION    0.0.26
   Helper:
     DBLOG:
       fcDay:
         myDbLog:
           TIME       1549192670.59004
           VALUE      5
       fcDayLast:
         myDbLog:
           TIME       1549148403.01087
           VALUE      7
       freezeDevice:
         myDbLog:
           TIME       1549192670.59004
           VALUE      no bad guy found :-(
       freezeTime:
         myDbLog:
           TIME       1549192670.59004
           VALUE      2.578
       ftDay:
         myDbLog:
           TIME       1549192670.59004
           VALUE      14.231
       ftDayLast:
         myDbLog:
           TIME       1549148403.01087
           VALUE      22.837
       state:
         myDbLog:
           TIME       1549192670.59004
           VALUE      s:12:17:48 e:12:17:50 f:2.578 d:no bad guy found :-(
   READINGS:
     2019-02-03 12:17:50   fcDay           5
     2019-02-03 00:00:03   fcDayLast       7
     2019-02-03 12:17:50   freezeDevice    no bad guy found :-(
     2019-02-03 12:17:50   freezeTime      2.578
     2019-02-03 12:17:50   ftDay           14.231
     2019-02-03 00:00:03   ftDayLast       22.837
     2019-02-03 12:17:50   state           s:12:17:48 e:12:17:50 f:2.578 d:no bad guy found :-(
   helper:
     DISABLED   0
     TIMER      1549192692
     apptime   
     fn         
     freeze     2.57811594009399
     intCount   56
     msg        [Freezemon] myFreezemon: possible freeze starting at 12:17:48, delay is 2.578 possibly caused by: no bad guy found :-(
     now        1549192670.57812
     inAt:
       HASH(0x5977600)
       HASH(0x55ad5f0)
       HASH(0x4d7eaa0)
       HASH(0x567bd98)
       HASH(0x56c3ec0)
       HASH(0x5606428)
       HASH(0x55a6408)
       HASH(0x54fb3d0)
       HASH(0x5686860)
       HASH(0x565c678)
       HASH(0x5502e30)
       HASH(0x5664530)
       HASH(0x5a2f238)
       HASH(0x58594d0)
       HASH(0x56c5e80)
       HASH(0x5848018)
       HASH(0x5843150)
       HASH(0x5850a48)
       HASH(0x5675958)
       HASH(0x561a270)
       HASH(0x5508718)
       HASH(0x547a400)
       HASH(0x4e406f0)
       HASH(0x5703c08)
       HASH(0x59b86e8)
       HASH(0x55185b0)
       HASH(0x58b82a8)
       HASH(0x55001f0)
       HASH(0x552a268)
       HASH(0x55c9f58)
       HASH(0x552ef08)
       HASH(0x54a85a0)
       HASH(0x55651b8)
       HASH(0x550c0d8)
       HASH(0x55027e8)
       HASH(0x5501508)
       HASH(0x5560f10)
       HASH(0x555e620)
       HASH(0x563b5d8)
       HASH(0x585d2e8)
       HASH(0x55d95b0)
       HASH(0x5713530)
       HASH(0x570d240)
       HASH(0x56563c0)
       HASH(0x55170a0)
       HASH(0x56c2808)
       HASH(0x568cf50)
       HASH(0x5849878)
     logfilequeue:
     logqueue:
       ARRAY(0x5849e30)
       ARRAY(0x5740070)
       ARRAY(0x573c748)
       ARRAY(0x5854050)
       ARRAY(0x5652a10)
       ARRAY(0x546e650)
       ARRAY(0x584eeb8)
       ARRAY(0x556d690)
Attributes:
   fm_ignoreDev Weihnachtsdeko_an_am,VU_Ultimo,MQTT2_FHEM_Server,Kameras,HUE,AbfallA,LED_Leiste_Bett_AutoAus
   fm_ignoreMode off
   fm_logFile /tmp/freeze-%Y%m%d-%H%M%S.log
   fm_logKeep 10
   group      Info
   room       Zentral
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

KernSani

Zitat von: Tommy82 am 03 Februar 2019, 12:18:28
Wenn meine definition in freezemon richtig ist, dürften die doch nicht mehr aufschlagen!?
da gebe ich dir vollkommen recht... komisch... Kannst du mal das zugehörige Log posten? Da müssten dann eigentlich auch ein paar verbose 5 Meldungen vom Freezemon kommen, die etwas Licht ins dunkel bringen könnten.
RasPi: RFXTRX, HM, zigbee2mqtt, mySensors, JeeLink, miLight, squeezbox, Alexa, Siri, ...

Tommy82

Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI