penghitung Jenis Kompleks

Mendefinisikan penghitung.

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

Elemen anak

Elemen Jenis Deskripsi
counterAttributes man:counterAttributes Mencantumkan atribut unik yang menentukan bagaimana data penghitung ditampilkan dalam aplikasi konsumen.

Atribut

Nama Jenis Deskripsi
agregat Fungsi agregasi untuk diterapkan jika atribut instanscounterSet adalah globalAggregate, multipleAggregate, atau globalAggregateHistory. Berikut ini adalah kemungkinan fungsi agregasi yang dapat Anda terapkan:
Maks
Nilai penghitung maksimum dikembalikan.
Min
Nilai penghitung minimum dikembalikan.
Avg
Nilai penghitung rata-rata dikembalikan.
Jumlah
Jumlah nilai penghitung dikembalikan.
Undefined
Jangan agregat penghitung ini.
baseID man:UInt32Type Pengidentifikasi penghitung lain dalam set penghitung yang sama, yang nilainya digunakan untuk menghitung nilai penghitung ini. Jenis penghitung berikut memerlukan penghitung dasar:
PERF_AVERAGE_TIMER
Membutuhkan penghitung dasar PERF_AVERAGE_BASE.
PERF_AVERAGE_BULK
Membutuhkan penghitung dasar PERF_AVERAGE_BASE.
PERF_COUNTER_MULTI_TIMER_INV
Membutuhkan penghitung dasar PERF_COUNTER_MULTI_BASE.
PERF_LARGE_RAW_FRACTION
Membutuhkan penghitung dasar PERF_LARGE_RAW_BASE.
PERF_PRECISION_100NS_TIMER
Membutuhkan penghitung dasar PERF_LARGE_RAW_BASE.
PERF_RAW_FRACTION
Membutuhkan penghitung dasar PERF_RAW_BASE.
PERF_SAMPLE_FRACTION
Membutuhkan penghitung dasar PERF_SAMPLE_BASE.
defaultScale Faktor skala yang akan diterapkan ke nilai penghitung (faktor * nilai penghitung). Defaultnya adalah nol jika tidak ada skala yang diterapkan. Nilai yang valid berkisar dari 10 hingga 10 (0,0000000001 hingga 1000000000). Jika nilai ini nol, nilai skalanya adalah 1; jika nilai ini adalah 1, nilai skalanya adalah 10; jika nilai ini adalah 1, nilai skalanya adalah .10; dan sebagainya.
deskripsi xs:string Deskripsi singkat tentang penghitung. Anda tidak perlu menentukan atribut ini jika penghitung menyertakan atribut noDisplay .
detailLevel Menentukan audiens target untuk detail penghitung. Berikut ini adalah nilai yang mungkin:
Standar
Tampilkan detail tentang penghitung yang akan dipahami pengguna biasa.
Lanjutan
Tampilkan detail tentang penghitung yang hanya akan dipahami pengguna tingkat lanjut.
bidang man:CSymbolType Nama bidang dalam struktur yang berisi nilai penghitung. Atribut ini tidak diizinkan untuk penyedia mode pengguna.
id man:UInt32Type Nomor unik yang mengidentifikasi penghitung dalam set penghitung.
multiCounterID man:UInt32Type Pengidentifikasi penghitung lain dalam set penghitung yang sama, yang nilai pengalinya digunakan untuk menghitung nilai penghitung ini. Jenis penghitung berikut memerlukan nilai pengali. Penghitung yang dirujuk harus berjenis PERF_COUNTER_RAWCOUNT.
  • PERF_COUNTER_MULTI_TIMER
  • PERF_COUNTER_MULTI_TIMER_INV
  • PERF_100NSEC_MULTI_TIMER
  • PERF_100NSEC_MULTI_TIMER_INV
nama Nama penghitung. Nama harus unik dan kurang dari 1.024 karakter. Namanya peka huruf besar/kecil. Anda tidak perlu menentukan atribut ini jika penghitung menyertakan atribut noDisplay .
perfFreqID man:UInt32Type Pengidentifikasi penghitung lain dalam set penghitung yang sama, yang nilai frekuensinya digunakan untuk menghitung nilai penghitung ini. Jenis penghitung berikut memerlukan frekuensi. Jenis penghitung PERF_COUNTER_LARGE_RAWCOUNT berisi nilai stempel waktu.
  • PERF_COUNTER_OBJECT_TIME_QUEUELEN_TYPE
  • PERF_ELAPSED_TIME
  • PERF_OBJ_TIME_TIMER
  • PERF_PRECISION_OBJECT_TIMER
perfTimeID man:UInt32Type Pengidentifikasi penghitung lain dalam set penghitung yang sama, yang nilai stempel waktunya digunakan untuk menghitung nilai penghitung ini. Jenis penghitung berikut memerlukan stempel waktu. Jenis penghitung PERF_COUNTER_LARGE_RAWCOUNT berisi nilai stempel waktu.
  • PERF_COUNTER_OBJECT_TIME_QUEUELEN_TYPE
  • PERF_ELAPSED_TIME
  • PERF_OBJ_TIME_TIMER
  • PERF_PRECISION_OBJECT_TIMER
Struktur man:CSymbolType Nama elemen struct yang berisi nilai penghitung ini. Atribut ini tidak diperbolehkan untuk penyedia mode pengguna.
simbol man:CSymbolType Nama simbolis yang mengidentifikasi penghitung. Alat CTRPP membuat konstanta yang dapat Anda gunakan saat memanggil fungsi yang memerlukan pengidentifikasi penghitung (misalnya, PerfIncrementULongCounterValue). Nama konstanta adalah nama simbolis.
jenis Nama jenis penghitung. Untuk nilai yang mungkin, lihat blok sintaks di atas. Untuk detail setiap jenis, lihat Jenis Penghitung di Panduan Penyebaran Windows 2003. Namanya peka huruf besar/kecil.
uri xs:anyURI Pengidentifikasi sumber daya seragam unik yang memungkinkan pengguna mengambil nilai penghitung dari lokasi mana pun.

Keterangan

Untuk memberikan kompatibilitas mundur, setiap penghitung dalam set penghitung harus menentukan nilai perfFreqID dan perfTimeID yang sama.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung
Windows Vista [hanya aplikasi desktop]
Server minimum yang didukung
Windows Server 2008 [hanya aplikasi desktop]