7 Windows 性能计数器

概览

你可以使用 perf_counter[] 这个key有效的监控Windows性能计数器。

例如:

  1. perf_counter["\Processor(0)\Interrupts/sec"]

  1. perf_counter["\Processor(0)\Interrupts/sec", 10]

有关使用此key的更多信息请参阅Windows专用监控项

为了获取可用于监控的新能计数器完整列表,你可以运行:

  1. typeperf -qx

可以通过低级别发现来发现windows性能计数器的多对象实例,并自动创建多实例对象的性能计数器监控项。

数字表示

由于性能计数器的命名在不同的Windows服务器上可能不同,这取决于服务器的地区设置。因此,在创建用于监控具有不同地区设置的多台Windows设备的模板时,会引发一定的问题。

同时,每个新能计数器也可以通过其数字形式来引用,无论如何,数字形式都是唯一的,因此你可以使用数字表示而不是字符串。

为了找到同义的数字,需要运行 regedit,然后找到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\009这个注册表。

注册表中包含形如下面所示的信息:

  1. · 1
  2. · 1847
  3. · 2
  4. · System
  5. · 4
  6. · Memory
  7. · 6
  8. · % Processor Time
  9. · 10
  10. · File Read Operations/sec
  11. · 12
  12. · File Write Operations/sec
  13. · 14
  14. · File Control Operations/sec
  15. · 16
  16. · File Read Bytes/sec
  17. · 18
  18. · File Write Bytes/sec
  19. · ....

这样你就可以找到性能计数器每个字符串对应的数字,例如:

  1. · System 2
  2. · % Processor Time 6

然后你就可以使用这些数字来表示性能计数器路径:

  1. · \2\6

性能计数器参数

你可以部署一些PerfCounter参数,来完成通过Windows性能计数器监控。

例如,你可以将下面的内容添加到ZABBIX代理配置文件中:

  1. PerfCounter=UserPerfCounter1,"\Memory\Page Reads/sec",30
  2. PerfCounter=UserPerfCounter2,"\4\24",30

配置了这些参数后,你就可以简单的使用 UserPerfCounter1UserPerfCounter2 作为key来创建相应的监控项。

当然,别忘了在更改配置文件后重新启动ZABBIX Agent。