FHEM > Anfängerfragen

FHEM wird immer langsamer nach ein paar Stunden.

(1/5) > >>

Basti-K:
Hallo Zusammen.
Meine FHEM Installation hat seit einer Woche ein Problem.
Nach ein paar Stunden Betrieb  (Neustatet des FHEM Diensts, oder des Servers) wird wird fhem immer langsamer von den Reaktionen. (Webseite, oder auch die mqtt Verbindungen bekommen timeouts) nach 18h geht gar nix mehr. Dann hat der perl Prozess 100%
Normal wären eigentlich um die 50%
Der Server (Raspi 3) läuft in dem zustand trotzdem ohne Problem weiter.
Auf dem Ding läuft noch:
Evcc
Pihole
Docker: Jdownloader und vaultwarden
die 4 Dienste haben überhaupt kein Performance Problem.
Apt ugrade durchgeführt (in der Hoffnung dass das hilft. Nö)

Als Gegentest wurden sie auch mal deaktiert. Fhem alleine verursacht das Problem

Es wurden keine Änderungen an der config vorgenommen. Die letzte kleine Änderung liegt Monate zurück. (Irgendwann gibt es nix mehr zu tunen)

Fhem > Update all durchgeführt aber ändert nichts.

Erwähnenswerte Module:
mqtt
Signalbot
CUL Stick (für HM und 433 Mhr Drücker)
Go-echarger (eigentlich überflüssig, weil die Laderegelung über evcc läuft, aber man(n) will hat alle Daten zentral haben)
E3DC also Modbus
Google Assistent
Ich hab mal alle Log gelöscht und ein tail auf das FHEM log laufen.
Da ist kein Fehler zu sehen.
Das alte log wurde mit grep nach error oder fehler durchsucht. Nichts…
Bei alles Geräten wurde event-on-change-reading   .* gesetz.
Funktionieren tut auch alles grundsätzlich alles…. für ein paar Stunden.
Nun bin ich etwas ratlos hat noch jemand eine Idee?

JensS:
Es gibt ein schönes Modul namens Freezemon. Damit kannst den Verursacher eventuell eingrenzen.

--- Code: ---defmod Freeze freezemon
attr Freeze fm_freezeThreshold 3
attr Freeze verbose 3
--- Ende Code ---

Gruß Jens

Beta-User:
Hmm, meine Glaskugel meint, dass da ein paar forkende Prozesse zusammenfallen, die dann dazu führen, dass der Speicher nicht reicht => swap => ausgebremst.... Das System fängt sich manchmal wieder, aber irgendwann kommt ein weiterer fork dazu => aus die Maus...?

Hast du zufällig PRESENCE in Ping im Einsatz? Dann schau mal nach der Variante von martinp876!

Weitere Anmerkungen:
- 50% als "Normalzustand" ist jedenfalls nach meinem Empfinden nicht akzeptabel
- "event-on ... .*" ist ein Anfang, aber kein Allheilmittel! Bau v.a. bei Sensoren Hysteresen ein!

Basti-K:
@Beta-User
 PRESENCE hab ich nicht. Aber mir ist aufgefallen das google das sein "Home" total umgeworfen hat. das würde auch in etwas so in die Richtung gehen.
nicht das der gAssistent der Übeltäter ist.

den Frostwarner will ich mal ausprobieren.

Hysterese kenne ich nur in einen andern Kontext.
aber ich hab auch da gegoogelt...
ich hab ein paar wait  im Einsatz.
wieso werden die auf einmal zum Problem?
oder meinst du etwas anderes?

Beta-User:

--- Zitat von: Basti-K am 14 Mai 2022, 21:27:25 ---Hysterese kenne ich nur in einen andern Kontext.
[...]
oder meinst du etwas anderes?

--- Ende Zitat ---
Such' mal in https://fhem.de/commandref_modular_DE.html nach readingFnAttribute bzw. der Beschreibung zu event-on-change-reading

Generell kannst du ja mal schauen, was bei dir so alles durch den Event-Monitor rauscht.

Man kann das Attribut übrigens auch als "Positiv-Liste" füllen - dann gibt "der ganze Rest" gar kein Event (wenn man es nicht an anderer Stelle (...on-update) aktiviert).

Ansonsten war PRESENCE nur ein "prominentes Beispiel", das häufig im Zusammenhang mit Problemen beim Forken auftaucht. Kann auch alles mögliche andere sein.
Hast du Aufzeichnungen zur Speichernutzung? (Es gibt zum Thema Speicherloch (=eigentlich ein anderes Thema) auch einen gesonderten Thread, da stehen auch einige Hinweise drin, die dir ggf. weiterhelfen könnten).

Nachtrag:
Hier mal mein archetype, das für das Setzen der readingFnAttributes für CUL_HM-Thermostat-Devices zuständig ist. Vielleicht probierst du das mal aus, falls du sowas hast...


--- Code: ---defmod archHM_RT_DN archetype TYPE=CUL_HM:FILTER=model=(HM-CC-RT-DN|HM-TC-IT-WM-W-EU)
attr archHM_RT_DN userattr actual_devStateIcon_4 actual_devStateIcon_WT actual_event-min-interval_0 actual_event-min-interval_4 actual_event-min-interval_WT actual_event-on-change-reading_0 actual_event-on-change-reading_1 actual_event-on-change-reading_4 actual_event-on-change-reading_WT actual_group actual_icon actual_icon_1 actual_icon_2 actual_room actual_room_4 actual_room_WT actual_tempListTmpl actual_tempListTmpl_4 actual_userattr_4 actual_webCmd_4 actual_widgetOverride_4 actual_widgetOverride_WT
attr archHM_RT_DN actual_devStateIcon_4 model=HM-CC-RT-DN:FILTER=chanNo=04 Perl:{devStateIcon_Clima($name)}
attr archHM_RT_DN actual_devStateIcon_WT model=HM-TC-IT-WM-W-EU:FILTER=chanNo=02 Perl:{devStateIcon_Clima($name)}
attr archHM_RT_DN actual_event-min-interval_0 DEF=.{6} measured-temp:900,desired-temp:1800,humidity:1800,actuator:7200
attr archHM_RT_DN actual_event-min-interval_4 model=HM-CC-RT-DN:FILTER=chanNo=04 measured-temp:900,desired-temp:1800
attr archHM_RT_DN actual_event-min-interval_WT model=HM-TC-IT-WM-W-EU:FILTER=chanNo=02 measured-temp:900,desired-temp:1800,humidity:1800
attr archHM_RT_DN actual_event-on-change-reading_0 DEF=.{6} measured-temp:0.2,.*,
attr archHM_RT_DN actual_event-on-change-reading_1 model=HM-CC-RT-DN:FILTER=chanNo=01 none
attr archHM_RT_DN actual_event-on-change-reading_4 model=HM-CC-RT-DN:FILTER=chanNo=04 measured-temp:0.2,.*
attr archHM_RT_DN actual_event-on-change-reading_WT model=HM-TC-IT-WM-W-EU:FILTER=chanNo=02 measured-temp:0.2,.*
attr archHM_RT_DN actual_group Heizung
attr archHM_RT_DN actual_icon_1 model=HM-CC-RT-DN hm-cc-rt-dn
attr archHM_RT_DN actual_icon_2 model=HM-TC-IT-WM-W-EU hm-tc-it-wm-w-eu
attr archHM_RT_DN actual_room Steuerung->Heizung
attr archHM_RT_DN actual_room_4 model=HM-CC-RT-DN:FILTER=chanNo=04 undef:Steuerung->Heizung
attr archHM_RT_DN actual_room_WT model=HM-TC-IT-WM-W-EU:FILTER=chanNo=02 undef:Steuerung->Heizung
attr archHM_RT_DN actual_tempListTmpl_4 model=HM-CC-RT-DN:FILTER=chanNo=04 none
attr archHM_RT_DN actual_userattr_4 model=HM-CC-RT-DN:FILTER=chanNo=04 weekprofile
attr archHM_RT_DN actual_webCmd_4 model=HM-CC-RT-DN:FILTER=chanNo=04 desired-temp
attr archHM_RT_DN actual_widgetOverride_4 model=HM-CC-RT-DN:FILTER=chanNo=04 desired-temp:knob,min:4.5,max:31.5,angleArc:180,width:40,height:40,fgColor:#FF9900,bgColor:#CCCCCC,step:0.5,lineCap:round,angleOffset:225
attr archHM_RT_DN actual_widgetOverride_WT model=HM-TC-IT-WM-W-EU:FILTER=chanNo=02 desired-temp:knob,min:4.5,max:31.5,angleArc:180,width:40,height:40,fgColor:#FF9900,bgColor:#CCCCCC,step:0.5,lineCap:round,angleOffset:225
attr archHM_RT_DN attributes room webCmd tempListTmpl group widgetOverride event-min-interval event-on-change-reading
attr archHM_RT_DN room Steuerung->Config

--- Ende Code ---

Und hier das für einen per OpenMQTTGateway eingefangenen Temperatursensor:

--- Code: ---defmod archOMGTemp archetype TYPE=MQTT2_DEVICE:FILTER=a:model=OpenMQTTGateway_BT_temp_hum_sensor
attr archOMGTemp userattr actual_event-min-interval actual_event-on-change-reading
attr archOMGTemp actual_event-min-interval batteryPercent:7200,temperature:300,humidity:900
attr archOMGTemp actual_event-on-change-reading batteryPercent,temperature:0.2,humidity:0.5,distance:5
attr archOMGTemp attributes event-on-change-reading event-min-interval
attr archOMGTemp room Steuerung->Config

--- Ende Code ---

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln