6 Windows性能计数器
概览
你可以使用 perf_counter[] 这个key有效的监控Windows性能计数器。
例如:
perf_counter["\Processor(0)\Interrupts/sec"]
或
perf_counter["\Processor(0)\Interrupts/sec", 10]
有关使用此key的更多信息请参阅Windows专用监控项。
为了获取可用于监控的新能计数器完整列表,你可以运行:
typeperf -qx
数字表示
由于性能计数器的命名在不同的Windows服务器上可能不同,这取决于服务器的地区设置。因此,在创建用于监控具有不同地区设置的多台Windows设备的模板时,会引发一定的问题。
同时,每个新能计数器也可以通过其数字形式来引用,无论如何,数字形式都是唯一的,因此你可以使用数字表示而不是字符串。
为了找到同义的数字,需要运行 regedit ,然后找到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\009这个注册表。
注册表中包含形如下面所示的信息:
1
1847
2
System
4
Memory
6
% Processor Time
10
File Read Operations/sec
12
File Write Operations/sec
14
File Control Operations/sec
16
File Read Bytes/sec
18
File Write Bytes/sec
....
这样你就可以找到性能计数器每个字符串对应的数字,例如:
System → 2
% Processor Time → 6
然后你就可以使用这些数字来表示性能计数器路径:
\2\6
性能计数器参数
你可以部署一些PerfCounter参数,来完成通过Windows性能计数器监控。
例如,你可以将下面的内容添加到ZABBIX代理配置文件中:
PerfCounter=UserPerfCounter1,"\Memory\Page Reads/sec",30
or
PerfCounter=UserPerfCounter2,"\4\24",30
配置了这些参数后,你就可以简单的使用 UserPerfCounter1 或 UserPerfCounter2 作为key来创建相应的监控项。
当然,别忘了在更改了配置文件后重新启动ZABBIX Agent。
故障处理
有时ZABBIX Agent 不能再基于Windows 2000的系统中检索性能计数器的值,因为pdh.dll文件已过时。这个错误会在ZABBIX Agent和Server的日志文件中会有失败信息。在这种情况下,phd.dll应当被更新到更新的 5.0.2195.2668 版本。