Windows: PrimoCache per Skript überwachen
PrimoCache von Romex Software lässt sich neben der grafischen Oberfläche per Command Line Interface (CLI) steuern. Dies bietet die Möglichkeit, den Status abzufragen und so das Produkt bzw. den Cache-Status in ein Monitoring einzubinden.
Im Programmordner unter
C:\Program Files\PrimoCache
befindet sich die Datei “rxpcc.exe”. Die möglichen Parameter sind in der Hersteller-Hilfe beschrieben:
PrimoCache – Help Documents – Command Line Interface (CLI)
Die CLI kann nur ausgeführt werden, wenn die GUI geschlossen ist!
Ein Überblick über den Status der angelegten Cache-Tasks erhält man mit “status”. Die Ausgabe sieht so aus:
Cache Task #1 {4A493D32-AFD5-4319-B4A4-AF4861378139} Status: Active Level-1 Cache: 4096MB MM: 4096MB, IM: 0MB R/W Ratio: Shared Options: - Level-2 Cache: 0MB Block Size: 8KB Strategy: Read & Write Defer-Write: Enabled Latency: 10s Mode: Native Options: - Prefetch: Enabled Overhead: 182,41MB Volume #4: Cache (Active) Strategy: Read & Write Level-2 Cache: Disabled Defer-Write: Enabled Prefetch: Enabled
Eine Statistik gibt es beispielsweise mit “perf -c <Task-Nummer>”:
Volume #4: Total Read : 4,32GB Cached Read : 400,42MB (9,0%) L2Storage Read : 0 (0,0%) L2Storage Write : 0 Total Write (Req) : 4,37GB Total Write (L1/L2) : 4,37GB / 0 Total Write (Disk) : 3,48GB (79,5%) Urgent/Normal : 0 / 3,48GB Deferred Blocks : 52 (0,0%) Trimmed Blocks : 21887 Prefetch : Inactive Free Cache (L1) : 69,01MB Free Cache (L2) : 0
Eine Verkettung mehrerer Parameter wie “mem status perf -c 1” funktioniert leider nicht. Möchte man die Ausgaben aus den einzelnen Abfragen in eine Datei schreiben hilft ein kleiner Batch-Aufruf:
@echo off set PCPath=C:\Program Files\PrimoCache set LogPath=C:\Logs\PrimoCache cd "%PCPath%" rxpcc.exe mem > "%LogPath%"\PrimoCache.log echo. >> "%LogPath%"\PrimoCache.log rxpcc.exe status >> "%LogPath%"\PrimoCache.log echo. >> "%LogPath%"\PrimoCache.log rxpcc.exe perf -c 1 >> "%LogPath%"\PrimoCache.log
Die wichtigsten Indikatoren das der Cache aktiv ist dürften die Zeilen
- “Status:” – Mögliche Werte “Active”, “Paused”
- “Level-1 Cache:” – Mögliche Werte “Disabled”, “<Cache-Größe>”
- “Level-2 Cache:” – Mögliche Werte “Disabled”, “<Cache-Größe>”
aus der “status”-Ausgabe sein. Ergo könnte man das zuvor erstellte Log danach auswerten:
type "%LogPath%"\PrimoCache.log | find "Status: Active" if %errorlevel% gtr 0 echo Cache-Status-Fehler >> "%LogPath%"\error.txt type "%LogPath%"\PrimoCache.log | find "Level-1 Cache: 4096MB" if %errorlevel% gtr 0 echo Level-1 Cache deaktiviert >> "%LogPath%"\error.txt

Verheiratet, Vater von zwei Kindern, eines an der Hand, eines im Herzen. Schon immer Technik-Freund, seit 2001 in der IT tätig und seit über 10 Jahren begeisterter Blogger. Mit meiner Firma IT-Service Weber kümmern wir uns um alle IT-Belange von gewerblichen Kunden und unterstützen zusätzlich sowohl Partner als auch Kollegen.