1. Definisi Kolektor
Windows Performance Recorder (WPR) saat ini mendukung tiga jenis kolektor: pengumpul sistem, pengumpul peristiwa, dan pengumpul peristiwa timbunan. Definisi pengumpul sistem menentukan ukuran buffer dan atribut lain untuk sesi pencatat sistem Pelacakan Peristiwa untuk Windows (ETW) yang bekerja sama dengan Pencatat Kernel NT. Definisi pengumpul peristiwa dan timbunan menentukan ukuran buffer dan atribut lain untuk sesi pengguna ETW.
Urutan definisi kolektor dibatasi oleh skema WPR. Dalam file .wprp, definisi pengumpul sistem harus mendahului definisi pengumpul peristiwa. Definisi ini harus mendahului definisi pengumpul timbunan (jika definisi pengumpul timbunan ada). Skema WPR didefinisikan dalam Skema WPRControlProfiles.
Atribut Kolektor
Kolektor memiliki atribut wajib berikut:
Id: Pengidentifikasi string unik yang mengacu pada definisi pengumpul dalam file .wprp.
Nama: Nama kolektor; misalnya, "Pengumpul WPR". Nama pengumpul sistem harus "NT Kernel Logger".
Definisi kolektor harus berisi definisi ukuran buffer berikut:
BufferSize: Menentukan ukuran buffer tunggal, dalam kilobyte (KB).
Buffer: Menentukan jumlah buffer atau, jika atribut PercentageOfTotalMemory diatur ke "true", persentase total memori yang akan digunakan untuk buffering.
Untuk informasi selengkapnya tentang buffer, lihat Mode Pengelogan.
Contoh Definisi Kolektor
Contoh kode berikut menunjukkan definisi pengumpul sistem dan definisi pengumpul peristiwa.
<SystemCollector
Id="WPRSystemCollector"
Name="NT Kernel Logger"
FileName="WPRKernel.etl">
<BufferSize
Value="512"/>
<Buffers
Value="3"
PercentageOfTotalMemory="true"/>
</SystemCollector>
<EventCollector
Id="WPREventCollector"
Name="WPR Event Collector"
FileName="somefilename.etl">
<BufferSize
Value="128"/>
<Buffers
Value="64"/>
</EventCollector>
<HeapEventCollector
Id="Base_Heap_Collector"
Name="Base Heap Collector"
FileName="heap.etl">
</HeapEventCollector>
Contoh Pewarisan
Perekam Performa Windows mendukung pewarisan objeknya dengan menggunakan Base=""
atribut dalam skema XML profil WPR. Ini memungkinkan penambahan atau spesialisasi objek dibangun secara progresif sambil menambahkan penggunaan kembali definisi umum.
Kompleksitas dan efek samping yang tidak diinginkan dapat terjadi dalam skenario tertentu; bagian ini menjelaskan contoh dan praktik terbaik yang direkomendasikan.
Contoh 1
Jika Profil profil A ingin menggunakan kolektor peristiwa Kolektor A dengan beberapa modifikasi, profil tersebut dapat menentukan kolektor Kolektor A2 yang berasal dari Kolektor A (Base="Collector A"), lalu mereferensikan kolektor Collector A2 tersebut. Ini disarankan karena hanya objek kolektor yang berasal dari objek pengumpul lain dan dirujuk secara langsung.
Contoh 2
Profil profil A mereferensikan kolektor Kolektor A. Profil lain B memerlukan perubahan pada Profil A sehingga berasal dari profil tersebut, dan menentukan perubahannya secara langsung dalam definisinya. Ini disarankan karena hanya objek profil yang berasal dari objek profil lain.
Contoh: 3
Profil profil A mereferensikan kolektor Kolektor A. Seorang kolektor Collector A2 berasal dari Collector A. Akhirnya, profil Profil B berasal baik dari Profil A dan juga mereferensikan Kolektor A yang sudah dirujuk di profil induk Profil B.
Dalam hal ini ambigu bagaimana definisi untuk Collector A2 harus dievaluasi. Dalam satu kasus, derivasi profil lebih diutamakan, dan di lain turunan kolektor lebih diutamakan. Ini tidak direkomendasikan karena pengurutan tidak terdefinisi dan dapat menyebabkan hasil yang berbeda berdasarkan urutan operasi.
Berdasarkan hal ini, Anda tidak boleh menggabungkan derivasi di beberapa jenis objek.