Type complexe de compteur

Définit un compteur.

<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>

Éléments enfants

Élément Type Description
counterAttributes homme : counterAttributes Répertorie les attributs uniques qui spécifient le mode d’affichage des données de compteur dans une application consommateur.

Attributs

Nom Type Description
aggregate Fonction d’agrégation à appliquer si l’attribut instances de counterSet est GlobalAggregate, multipleAggregate ou globalAggregateHistory. Vous pouvez appliquer les fonctions d’agrégation suivantes :
max
La valeur de compteur maximale est retournée.
minute(s)
La valeur de compteur minimale est retournée.
avg
La valeur moyenne du compteur est retournée.
checksum
La somme des valeurs de compteur est retournée.
non défini
Ne pas agréger ce compteur.
baseID homme : UInt32Type Identificateur d’un autre compteur dans le même ensemble de compteurs, dont la valeur est utilisée pour calculer la valeur de ce compteur. Les types de compteurs suivants requièrent un compteur de base :
PERF_AVERAGE_TIMER
Requiert le compteur de base PERF_AVERAGE_BASE.
PERF_AVERAGE_BULK
Requiert le compteur de base PERF_AVERAGE_BASE.
PERF_COUNTER_MULTI_TIMER_INV
Requiert le compteur de base PERF_COUNTER_MULTI_BASE.
PERF_LARGE_RAW_FRACTION
Requiert le compteur de base PERF_LARGE_RAW_BASE.
PERF_PRECISION_100NS_TIMER
Requiert le compteur de base PERF_LARGE_RAW_BASE.
PERF_RAW_FRACTION
Requiert le compteur de base PERF_RAW_BASE.
PERF_SAMPLE_FRACTION
Requiert le compteur de base PERF_SAMPLE_BASE.
defaultScale Facteur d’échelle à appliquer à la valeur de compteur (facteur * valeur de compteur). La valeur par défaut est zéro si aucune échelle n’est appliquée. Les valeurs valides sont comprises entre 10 et 10 (0,0000000001 à 1 milliard). Si cette valeur est égale à zéro, la valeur de mise à l’échelle est 1 ; Si cette valeur est 1, la valeur de l’échelle est 10 ; Si cette valeur est 1, la valeur de l’échelle est. 10 ; et ainsi de suite.
description xs:string Brève description du compteur. Vous n’avez pas besoin de spécifier cet attribut si le compteur comprend l’attribut nodisplay .
detailLevel Spécifie le public cible pour les détails du compteur. Les valeurs possibles sont les suivantes :
hiver
Affichez des détails sur le compteur qu’un utilisateur classique peut comprendre.
détaillées
Affichez des détails sur le compteur que seul un utilisateur expérimenté peut comprendre.
field homme : CSymbolType Nom d’un champ dans le struct qui contient la valeur de compteur. Cet attribut n’est pas autorisé pour les fournisseurs en mode utilisateur.
id homme : UInt32Type Numéro unique qui identifie le compteur au sein de l’ensemble de compteurs.
multiCounterID homme : UInt32Type Identificateur d’un autre compteur dans le même ensemble de compteurs, dont la valeur de multiplicateur est utilisée pour calculer la valeur de ce compteur. Les types de compteurs suivants requièrent une valeur de multiplicateur. Le compteur référencé doit être de type PERF_COUNTER_RAWCOUNT.
  • PERF_COUNTER_MULTI_TIMER
  • PERF_COUNTER_MULTI_TIMER_INV
  • PERF_100NSEC_MULTI_TIMER
  • PERF_100NSEC_MULTI_TIMER_INV
name Nom du compteur. Le nom doit être unique et contenir moins de 1 024 caractères. Cette valeur respecte la casse. Vous n’avez pas besoin de spécifier cet attribut si le compteur comprend l’attribut nodisplay .
perfFreqID homme : UInt32Type Identificateur d’un autre compteur dans le même ensemble de compteurs, dont la valeur de fréquence est utilisée pour calculer la valeur de ce compteur. Les types de compteurs suivants requièrent une fréquence. Le type de compteur PERF_COUNTER_LARGE_RAWCOUNT contient la valeur d’horodatage.
  • PERF_COUNTER_OBJECT_TIME_QUEUELEN_TYPE
  • PERF_ELAPSED_TIME
  • PERF_OBJ_TIME_TIMER
  • PERF_PRECISION_OBJECT_TIMER
perfTimeID homme : UInt32Type Identificateur d’un autre compteur dans le même ensemble de compteurs, dont la valeur d’horodatage est utilisée pour calculer la valeur de ce compteur. Les types de compteurs suivants requièrent un horodatage. Le type de compteur PERF_COUNTER_LARGE_RAWCOUNT contient la valeur d’horodatage.
  • PERF_COUNTER_OBJECT_TIME_QUEUELEN_TYPE
  • PERF_ELAPSED_TIME
  • PERF_OBJ_TIME_TIMER
  • PERF_PRECISION_OBJECT_TIMER
struct homme : CSymbolType Nom d’un élément de struct qui contient cette valeur de compteur. Cet attribut n’est pas autorisé pour les fournisseurs en mode utilisateur.
symbole homme : CSymbolType Nom symbolique qui identifie le compteur. L’outil CTRPP crée une constante que vous pouvez utiliser lors de l’appel de fonctions qui requièrent un identificateur de compteur (par exemple, PerfIncrementULongCounterValue). Le nom de la constante est le nom symbolique.
type Nom du type de compteur. Pour connaître les valeurs possibles, consultez le bloc de syntaxe ci-dessus. pour plus d’informations sur chaque type, consultez Types de compteurs dans le Windows Guide de déploiement de 2003. Le nom respecte la casse. Utilisez des minuscules.
URI xs:anyURI Identificateur de ressource uniforme unique qui permet aux utilisateurs de récupérer des valeurs de compteur à partir de n’importe quel emplacement.

Notes

Pour assurer la compatibilité descendante, chaque compteur de l’ensemble de compteurs doit spécifier les mêmes valeurs perfFreqID et perfTimeID .

Configuration requise

Condition requise Valeur
Client minimal pris en charge
Windows [Applications de bureau Vista uniquement]
Serveur minimal pris en charge
Windows Serveur 2008 [ applications de bureau uniquement]