Vor einigen Tagen habe ich mir eine Seagate Dockstar gekauft (mehr dazu vielleicht später). Darauf läuft nun Munin für die Überwachung von lokalen Ressourcen. Leider habe ich aber kein Plugin gefunden, was mit einer Fritzbox 7240/7270 und der aktuellen Firmware zurecht kommt.

Die Lösung hat mir das Projekt upnp2mrtg geliefert. Mittels diesen Skriptes ist es möglich, über UPnP Statusinformationen der Fritzbox auszulesen. Rausgekommen sind die folgenden beiden Skripte die einmal die Online-Zeit der Fritzbox und den aktuellen Traffic visualisieren.

Zur Installation am besten die Plugins irgendwo auf den Rechner und dann einen Link ins Munin-Plugin-Verzeichnis anlegen. Nach einem Neustart sollten die Graphen erstellt werden können.

fritzbox_online_time

fritzbox_transfer

Beim Einsatz von Robocopy zum kopieren von Dateien auf eine Samba-Freigabe kann es zu folgendem Problem kommen:

Da die Interpretation von Timestamps und deren Abweichung vom eingesetzten File-System abhängt, werden einzelne Dateien immer wieder kopiert obwohl sich nichts an den Dateien geändert hat. Um dies zu verhindern gibt es folgenden Schalter in Robocopy:

/FFT :: assume FAT File Times (2-second granularity).

For a persistence service we needed a local cache. We decided to use a least recently used cache which allows to set a maximum size and automatically deletes the oldest elements.

A simple implementation based on the Java-Class LinkedHashMap can be found here:

LRUCache.java

Usage:

LRUCache<String, String> myCache = new LRUCache<String, String>(10);

If you need to access the cache with multiple threads, you can use the static Collections.synchronizedMap method:

Collections.synchronizedMap(new LRUCache<String, String>(CACHE_SIZE));