カウンター パスの指定

システムはカウンターを使用してパフォーマンス データを収集します。 各カウンターは、名前とそのパス、または場所によって一意に識別されます。 カウンター パスの構文は次のとおりです。

\\Computer\PerfObject(ParentInstance/ObjectInstance#InstanceIndex)\Counter

Computer 要素は、パフォーマンス データのクエリを実行するコンピューターの名前または IP アドレスを指定します。 カウンターがローカル コンピューターにある場合、コンピューター名は省略可能です。

PerfObject 要素は、クエリを実行するパフォーマンス オブジェクトを指定します。 パフォーマンス オブジェクトには、プロセッサ、ディスク、メモリなどの物理コンポーネント、またはプロセスやスレッドなどのシステム オブジェクトを指定できます。 各システム オブジェクトは、コンピューター内の機能要素に関連し、一連の標準カウンターが割り当てられます。 アプリケーションで独自のパフォーマンス オブジェクトとカウンターをインストールできるため、各コンピューターに異なるパフォーマンス オブジェクトとカウンターのセットがインストールされている場合があります。 コンピューターにインストールされているパフォーマンス オブジェクトとカウンターの一覧については、コンピューターのパフォーマンス ツールの [ カウンターの追加 ] ダイアログ ボックスを参照してください。 これらのオブジェクトは、[PDH 参照] ダイアログ ボックスにも表示されます ( 参照カウンターを参照)。 システム パフォーマンス オブジェクトとカウンターの一覧については、「 オブジェクト別カウンター」を参照してください。

ParentInstance、ObjectInstance、および InstanceIndex は、オブジェクトの複数のインスタンスが存在できる場合、パスに含まれます。 たとえば、複数のプロセスまたはスレッドを同時に実行できるため、プロセスとスレッドは複数のインスタンス オブジェクトです。 オブジェクトに複数のインスタンスを含めることができる場合は、カウンター パスでオブジェクト インスタンスを指定する必要があります。

インスタンス関連の要素の形式は、オブジェクトの種類によって異なります。 オブジェクトに単純なインスタンスがある場合、形式はかっこで囲まれたインスタンス名のみです。 次に例を示します。

(Explorer)

このオブジェクトのインスタンスにも親インスタンス名が必要な場合、親インスタンス名はオブジェクト インスタンスの前に付け、スラッシュ文字で区切る必要があります。 たとえば、スレッドはプロセスに属しています。 スレッド オブジェクトに対してクエリを実行する場合は、次の例に示すように、そのオブジェクトが属するプロセスも指定する必要があります。

(Explorer/0)

オブジェクトに同じ名前の文字列を持つ複数のインスタンスがある場合は、ポンド記号でプレフィックスが付いたインスタンス インデックスを指定することで、順番にインデックスを作成できます。 インスタンス インデックスは 0 から始まります。 最初のインスタンスに対してクエリを実行する場合は、#0 を含めないでください。インスタンス名を指定するだけです。 2 番目のインスタンスを指定するには、#1 を使用します。3 番目のインスタンスを指定するには、#2 を使用します。などなど。 次に例を示します。

(Explorer/0#1)

Counter 要素は、指定されたパフォーマンス オブジェクトに対してクエリを実行するパフォーマンス カウンターを指定します。

PDH では、カウンター パスで次の特殊文字が使用されます。 プロバイダーは、これらの文字を名前に使用しないでください。 プロバイダーがこれらの特殊文字を使用する場合、PDH はカウンター名とインスタンス名を取得するために完全なカウンター パスを解析できません。

文字 説明
\ コンピューター、オブジェクト、カウンターの汎用区切り記号。
( インスタンス名の先頭。
) インスタンス名の末尾。
/ インスタンスと親インスタンスを分離します。
#n 同じ名前のインスタンスの特定の出現箇所を識別します。
* ワイルドカード文字。

 

次の例は、カウンター パスで使用できる形式を示しています。

  • \\computer\object(parent/instance#index)\counter
  • \\computer\object(parent/instance)\counter
  • \\computer\object(instance#index)\counter
  • \\computer\object(instance)\counter
  • \\computer\object\counter
  • \object(parent/instance#index)\counter
  • \object(parent/instance)\counter
  • \object(instance#index)\counter
  • \object(instance)\counter
  • \object\counter

ワイルドカード文字の使用

カウンター パスには、次の例に示すように、インスタンス名に対してのみワイルドカード文字を使用できます。

\Process(*)\% Processor Time

コンピューターまたはログ ファイルで見つかったインスタンスを含むカウンター パスの一覧にワイルドカードを展開するには、 PdhExpandWildCardPath を呼び出します。