сложный тип счетчика
Определяет счетчик.
<xs:complexType name="counter">
<xs:choice
minOccurs="0"
maxOccurs="1"
>
<xs:element name="counterAttributes"
type="man:counterAttributes"
>
<xs:key name="uniqueCounterAttributeName">
<xs:selector
xpath="./man:counterAttribute"
/>
<xs:field
xpath="@name"
/>
</xs:key>
</xs:element>
</xs:choice>
<xs:attribute name="symbol"
type="man:CSymbolType"
use="optional"
/>
<xs:attribute name="id"
type="man:UInt32Type"
use="required"
/>
<xs:attribute name="uri"
type="xs:anyURI"
use="required"
/>
<xs:attribute name="name"
use="optional"
>
<xs:simpleType>
<xs:restriction
base="xs:string"
>
<xs:maxLength
value="1023"
/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="description"
type="xs:string"
use="optional"
/>
<xs:attribute name="type"
use="required"
>
<xs:simpleType>
<xs:restriction
base="xs:string"
>
<xs:enumeration
value="perf_counter_counter"
/>
<xs:enumeration
value="perf_counter_timer"
/>
<xs:enumeration
value="perf_counter_queuelen_type"
/>
<xs:enumeration
value="perf_counter_large_queuelen_type"
/>
<xs:enumeration
value="perf_counter_100ns_queuelen_type"
/>
<xs:enumeration
value="perf_counter_obj_time_queuelen_type"
/>
<xs:enumeration
value="perf_counter_bulk_count"
/>
<xs:enumeration
value="perf_counter_text"
/>
<xs:enumeration
value="perf_counter_rawcount"
/>
<xs:enumeration
value="perf_counter_large_rawcount"
/>
<xs:enumeration
value="perf_counter_rawcount_hex"
/>
<xs:enumeration
value="perf_counter_large_rawcount_hex"
/>
<xs:enumeration
value="perf_sample_fraction"
/>
<xs:enumeration
value="perf_sample_counter"
/>
<xs:enumeration
value="perf_counter_timer_inv"
/>
<xs:enumeration
value="perf_sample_base"
/>
<xs:enumeration
value="perf_average_timer"
/>
<xs:enumeration
value="perf_average_base"
/>
<xs:enumeration
value="perf_average_bulk"
/>
<xs:enumeration
value="perf_obj_time_timer"
/>
<xs:enumeration
value="perf_100nsec_timer"
/>
<xs:enumeration
value="perf_100nsec_timer_inv"
/>
<xs:enumeration
value="perf_counter_multi_timer"
/>
<xs:enumeration
value="perf_counter_multi_timer_inv"
/>
<xs:enumeration
value="perf_counter_multi_base"
/>
<xs:enumeration
value="perf_100nsec_multi_timer"
/>
<xs:enumeration
value="perf_100nsec_multi_timer_inv"
/>
<xs:enumeration
value="perf_raw_fraction"
/>
<xs:enumeration
value="perf_large_raw_fraction"
/>
<xs:enumeration
value="perf_raw_base"
/>
<xs:enumeration
value="perf_large_raw_base"
/>
<xs:enumeration
value="perf_elapsed_time"
/>
<xs:enumeration
value="perf_counter_delta"
/>
<xs:enumeration
value="perf_counter_large_delta"
/>
<xs:enumeration
value="perf_precision_system_timer"
/>
<xs:enumeration
value="perf_precision_100ns_timer"
/>
<xs:enumeration
value="perf_precision_object_timer"
/>
<xs:enumeration
value="perf_counter_composite"
/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="baseID"
type="man:UInt32Type"
use="optional"
/>
<xs:attribute name="detailLevel"
use="required"
>
<xs:simpleType>
<xs:restriction
base="xs:string"
>
<xs:enumeration
value="standard"
/>
<xs:enumeration
value="advanced"
/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="defaultScale"
use="optional"
default="0"
>
<xs:simpleType>
<xs:restriction
base="xs:integer"
>
<xs:minInclusive
value="-10"
/>
<xs:maxInclusive
value="10"
/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="aggregate"
use="optional"
>
<xs:simpleType>
<xs:restriction
base="xs:string"
>
<xs:enumeration
value="sum"
/>
<xs:enumeration
value="avg"
/>
<xs:enumeration
value="max"
/>
<xs:enumeration
value="min"
/>
<xs:enumeration
value="undefined"
/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="perfTimeID"
type="man:UInt32Type"
use="optional"
/>
<xs:attribute name="perfFreqID"
type="man:UInt32Type"
use="optional"
/>
<xs:attribute name="multiCounterID"
type="man:UInt32Type"
use="optional"
/>
<xs:attribute name="struct"
type="man:CSymbolType"
use="optional"
/>
<xs:attribute name="field"
type="man:CSymbolType"
use="optional"
/>
</xs:complexType>
Дочерние элементы
Элемент | Тип | Описание |
---|---|---|
counterAttributes | man:counterAttributes | Список уникальных атрибутов, определяющих способ отображения данных счетчика в приложении-получателе. |
Атрибуты
Имя | Тип | Описание |
---|---|---|
статистическое выражение | Агрегатная функция, применяемая, если атрибут экземпляровcounterSet имеет значение globalAggregate, multipleAggregate или globalAggregateHistory. Ниже приведены возможные статистические функции, которые можно применить.
|
|
baseID | man:UInt32Type | Идентификатор другого счетчика в том же наборе счетчиков, значение которого используется для вычисления значения этого счетчика. Для следующих типов счетчиков требуется базовый счетчик:
|
defaultScale | Коэффициент масштабирования, применяемый к значению счетчика (фактор * значение счетчика). Значение по умолчанию равно нулю, если масштабирование не применяется. Допустимые значения варьируются от 10 до 10 (от 0,00000000001 до 1000000000). Если это значение равно нулю, значение шкалы равно 1; Если это значение равно 1, масштаб равно 10; Если это значение равно 1, значение шкалы равно 0,10; и так далее. |
|
description | xs:string | Краткое описание счетчика. Не нужно указывать этот атрибут, если счетчик включает атрибут noDisplay . |
detailLevel | Указывает целевую аудиторию для сведений счетчика. Допустимы следующие значения:
|
|
поле | man:CSymbolType | Имя поля в структуре, содержащей значение счетчика. Этот атрибут не разрешен для поставщиков пользовательского режима. |
идентификатор | man:UInt32Type | Уникальное число, определяющее счетчик в наборе счетчиков. |
multiCounterID | man:UInt32Type | Идентификатор другого счетчика в том же наборе счетчиков, значение множителя которого используется для вычисления значения этого счетчика. Для следующих типов счетчиков требуется значение множителя. Указанный счетчик должен иметь тип PERF_COUNTER_RAWCOUNT.
|
name | Имя счетчика. Имя должно быть уникальным и содержать менее 1024 символов. В нем учитывается регистр. Не нужно указывать этот атрибут, если счетчик включает атрибут noDisplay . |
|
perfFreqID | man:UInt32Type | Идентификатор другого счетчика в том же наборе счетчиков, значение частоты которого используется для вычисления значения этого счетчика. Для следующих типов счетчиков требуется частота. Тип счетчика PERF_COUNTER_LARGE_RAWCOUNT содержит значение метки времени.
|
perfTimeID | man:UInt32Type | Идентификатор другого счетчика в том же наборе счетчиков, значение метки времени которого используется для вычисления значения этого счетчика. Для следующих типов счетчиков требуется метка времени. Тип счетчика PERF_COUNTER_LARGE_RAWCOUNT содержит значение метки времени.
|
struct | man:CSymbolType | Имя элемента структуры, содержащего это значение счетчика. Этот атрибут не разрешен для поставщиков пользовательского режима. |
символ | man:CSymbolType | Символьное имя, идентифицирующее счетчик. Средство CTRPP создает константу, которую можно использовать при вызове функций, требующих идентификатора счетчика (например, PerfIncrementULongCounterValue). Имя константы является символическим именем. |
тип | Имя типа счетчика. Возможные значения см. в приведенном выше блоке синтаксиса. Дополнительные сведения о каждом типе см. в разделе Типы счетчиков в руководстве по развертыванию Windows 2003. В имени учитывается регистр, используйте нижний регистр. |
|
uri | xs:anyURI | Уникальный универсальный идентификатор ресурса, который позволяет пользователям получать значения счетчиков из любого расположения. |
Комментарии
Чтобы обеспечить обратную совместимость, каждый счетчик в наборе счетчиков должен указывать одинаковые значения perfFreqID и perfTimeID .
Требования
Требование | Значение |
---|---|
Минимальная версия клиента |
Windows Vista [только классические приложения] |
Минимальная версия сервера |
Windows Server 2008 [только классические приложения] |