Der Zabbix Agent bietet die Möglichkeit unter Windows sämmtliche Performance Counter abzufragen. Über die Performance Counter können sämmtliche relevante Daten abgefragt werden, das fängt bei der CPU Auslastung an und geht dann über detailierte Statistiken der Prozesse und des Hauptspeichers bis hin zu externen Diensten die hier ihre Daten bereitstellen.

Eine Übersicht der auf einem System vorhandenen Performance Counter finden wir indem wir in der Komandozeile  TypePerf -q  eingeben.

Die in dieser Liste dargestellten Pfade können wir dann in Zabbix in den perf_counter[] Key einfügen:

Performance Counter Item

Item zum abfragen der Windows Performance Counter

Nach diesem Muster können wir nun nach belieben weitere Items erstellen. Probleme bekommen wir aber in unserem Beispiel dann wenn wir unser Item auf einen Host kopieren der keine deutschsprachige Windowsinstallation hat. Die Pfade werden leider in die jeweilige Lokalisation übersetzt was uns hier vor Probleme stellt wenn wir unser Item auf einem englischsprachigem System verwenden wollen.

Da wo ein Problem ist gibt es aber glücklicherweise auch eine Lösung. In diesem Fall bietet Zabbix die Möglichkeit nicht nur über die Namen auf die Pfade zuzugreifen sondern auch über numerische Werte. Diese sind dann zwar nicht mehr so schön lesbar wie die Klartextnamen, dafür aber Systemübergreifend verfügbar.

Die hierfür nötige Aufschlüsselung finden wir in der Windows Registry unter dem Pfad HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\009 . Dort finden wir den Key “Counter”. Wenn wir diesen öffnen finden wir zu allen Pfaden numerische IDs welche wir in unserem Zabbix Item verwenden können. Hier finden wir für unser obiges Beispiel dann den Pfad  \238\6 . Diesen können wir nun einfach in unserem perf_counter verwenden: perf_counter[\238(_Total)\6]

Die PerfCounter in dieser Form sind nun universell auf unseren verschiedensprachigen Windows Hosts einsetzbar. \O/