6 Windows パフォーマンスカウンタ
概要
Windowsのパフォーマンスカウンタは、perf_counter[] キーを使用して効率的に監視することができます。
例えば:
perf_counter["\Processor(0)\Interrupts/sec"]
あるいは
perf_counter["\Processor(0)\Interrupts/sec", 10]
このキーまたは英語版のみの同等物 perf_counter_en の使用に関する詳細については、[Windows-specific item keys]((/manual/config/items/itemtypes/zabbix_agent/win_keys)を参照してください。
監視可能なパフォーマンスカウンタの全リストを取得するには、次のコマンドを実行します。
typeperf -qx
また、ローレベルディスカバリ機能を使用して、複数の object instancesを検出し、複数のインスタンスオブジェクトに対する
perf_counter item の作成を自動化することも可能です。
数値表現
Windows では、オブジェクト名およびパフォーマンスカウンター名に対して、数値表現(インデックス)が保持されています。Zabbix では、perf_counter、perf_counter_en アイテムキーのパラメータ、および PerfCounter、PerfCounterEn 設定パラメータとして、これらの数値表現をサポートしています。
ただし、特定のホスト上で数値インデックスが正しい文字列に対応していることを保証できる場合を除き、これらを使用することは推奨されません。異なるローカライズ版の Windows を使用するさまざまなホスト間で動作する移植可能なアイテムを作成する必要がある場合は、システムのロケールに関係なく英語名を使用できる perf_counter_en キーまたは PerfCounterEn 設定パラメータを使用できます。
数値に対応する文字列を確認するには、regedit を実行し、HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\009 にある Counter を探します。
レジストリエントリには、次のような情報が含まれています。
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\% Processor Time' のようなパフォーマンスカウンターの各文字列部分に対応する番号を確認できます。
System → 2
% Processor Time → 6
これらの番号を使用して、パスを数値で表現できます。
\2\6
パフォーマンスカウンタパラメーター
Windowsのパフォーマンスカウンタを監視するために、いくつかのPerfCounterパラメータを導入することができます。
例えば、Zabbixエージェント設定ファイルに以下を追加することができます。
PerfCounter=UserPerfCounter1,"\Memory\Page Reads/sec",30
または
PerfCounter=UserPerfCounter2,"\4\24",30
このようなパラメータを設定すると、それぞれの item を作成するためのキーとして UserPerfCounter1 または UserPerfCounter2 を
使用するだけでよくなります。
設定ファイルを変更した後は、Zabbixエージェントを再起動することを忘れないでください。