Es gibt Neuigkeiten, und zwar gute! Ich habe das Leck schneller als gedacht eingrenzen können: es liegt eindeutig am SpeedFan-Plugin. Ist das Plugin deaktiviert, schwankt der Speicherverbrauch des Munin Node über einige Stunden maximal 12 KB (was ich als normal betrachte). Ist es aktiviert, steigt der Speicherverbrauch zwischen 100 und 800 KB pro 30 Minuten!
Hier mal eine Übersicht der mitgeschriebenen Werte. WS = Working Set, Werte in Kilobyte (KB).
Plugin | Startwert WS | WS nach dem ersten Netzwerkkontakt | Endwert nach 5 Stunden | Diff | Kommentar |
---|
alle außer External, PerfCounter, SMART, HD, SpeedFan | 3004 | 3188 | 3192 | 4 | VM mit XP |
alle außer External, PerfCounter, SMART, HD | 3032 | 3268 | 5568 | 2300 | VM mit XP |
alle außer External, PerfCounter, SMART, HD, SpeedFan | ? | 4724 | 4728 | 4 | Host mit Win7 |
alle außer External, PerfCounter, SMART, SpeedFan | 4324 | 4712 | 4724 | 12 | Host mit Win7 |
alle außer External, SMART | 4360 | 4560 | 5132 | 572 | Win2k; Wert nach 3 Stunden |
Die Speicherzunahme ist auch auf Win2k zu beobachten. Warum ich hier von einem Unterschied zwischen Win2k und XP+ ausging, ist ganz einfach zu erklären: SpeedFan kam bei mir nie auf Win2k zum Einsatz, sondern erst ab XP; die Systeme mit Win2k benutzten ältere Hardware, die noch mit Motherboard Monitor auslesbar war (daher gab's keinen Grund für SpeedFan).
Weitere wichtige Beobachtung: Der Speicherzuwachs ist sogar abhängig davon, wieviele weitere Rechner mit SpeedFan im LAN aktiv sind, d.h. je mehr Systeme desto stärker wächst die Größe des Munin Node!
Nun muss nur noch das Leck selbst gefunden werden. Falls jemand Zeit und Lust hat, kann gern einen Blick auf den
Code des Plugins werfen. Ich werde dasselbe tun. Nach einem ersten Blick auf den Code, ist meine Vermutung, dass das Leck irgendwo in der Funktion SpeedFanNodePlugin::ListenerThread::ProcessBuffer( ) steckt.
Grüße
Dalai