Specifying a Counter Path (Указание пути счетчика)
Система использует счетчики для сбора данных о производительности. Каждый счетчик однозначно идентифицируется по имени, пути или расположению. Синтаксис пути счетчика:
\\Computer\PerfObject(ParentInstance/ObjectInstance#InstanceIndex)\Counter
Элемент Computer указывает имя или IP-адрес компьютера, с которого требуется запрашивать данные о производительности. Имя компьютера является необязательным, если счетчик находится на локальном компьютере.
Элемент PerfObject указывает объект производительности для запроса. Объект производительности может быть физическим компонентом, таким как процессоры, диски и память, или системным объектом, например процессами и потоками. Каждый системный объект связан с функциональным элементом на компьютере и ему назначен набор стандартных счетчиков. На каждом компьютере может быть установлен отдельный набор объектов производительности и счетчиков, так как приложения могут устанавливать собственные объекты производительности и счетчики. Список объектов производительности и счетчиков, установленных на компьютере, см. в диалоговом окне Добавление счетчиков в средстве производительности на компьютере. Эти объекты также перечислены в диалоговом окне обзора PDH (см. раздел Просмотр счетчиков). Список системных объектов производительности и счетчиков см. в разделе Счетчики по объектам.
ParentInstance, ObjectInstance и InstanceIndex включаются в путь, если может существовать несколько экземпляров объекта. Например, процессы и потоки являются несколькими объектами экземпляров, так как несколько процессов или потоков могут выполняться одновременно. Если объект может иметь несколько экземпляров, путь счетчика должен указывать экземпляр объекта.
Формат элементов, связанных с экземпляром, зависит от типа объекта. Если объект содержит простые экземпляры, то форматом является только имя экземпляра, заключенное в круглые скобки. Пример:
(Explorer)
Если экземпляру этого объекта также требуется имя родительского экземпляра, имя родительского экземпляра должно находиться перед экземпляром объекта и отделяться символом косой черты. Например, потоки принадлежат процессам. При запросе объекта потока необходимо также указать процесс, которому он принадлежит, как показано в следующем примере:
(Explorer/0)
Если объект содержит несколько экземпляров с одинаковыми строками имен, их можно индексировать последовательно, указав индекс экземпляра с префиксом символа фунта. Индексы экземпляров основаны на 0. Если вы хотите запросить первый экземпляр, не включайте #0— просто укажите имя экземпляра. Чтобы указать второй экземпляр, используйте #1; чтобы указать третий экземпляр, используйте #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(экземпляр)\counter
- \object\counter
Использование подстановочных знаков
Пути счетчиков могут содержать подстановочный знак только для имени экземпляра, как показано в следующем примере.
\Process(*)\% Processor Time
Чтобы развернуть подстановочный знак в список путей счетчиков, содержащих экземпляры, найденные на компьютере или в файле журнала, вызовите PdhExpandWildCardPath.