Bagikan melalui


Pelacakan Perangkat Lunak WPP

Bagian ini menjelaskan cara menggunakan pra-prosesor pelacakan perangkat lunak Windows (WPP) untuk melacak pengoperasian komponen perangkat lunak (penyedia pelacakan). Penyedia pelacakan bisa menjadi salah satu hal berikut:

  • Driver mode kernel.

  • Driver mode pengguna, aplikasi, atau pustaka tautan dinamis (DLL).

Perangkat lunak WPP melacak suplemen dan meningkatkan pelacakan peristiwa WMI dengan menambahkan cara untuk menyederhanakan pelacakan operasi penyedia pelacakan. Ini adalah mekanisme yang efisien bagi penyedia pelacakan untuk mencatat pesan biner real-time. Pesan yang dicatat kemudian dapat dikonversi ke jejak yang dapat dibaca manusia dari operasi penyedia pelacakan.

Kapan Anda harus menggunakan pelacakan perangkat lunak WPP?

Pelacakan perangkat lunak WPP terutama ditujukan untuk kode penelusuran kesalahan selama pengembangan. Jika Anda ingin menerbitkan peristiwa yang dapat dikonsumsi oleh aplikasi yang tertarik dengan peristiwa ETW terstruktur, selain pelacakan selama pengembangan, gunakan hal berikut:

Untuk informasi selengkapnya, lihat Kapan saya harus menggunakan Pelacakan Perangkat Lunak WPP atau Api Pelacakan Peristiwa untuk Windows (ETW)?

Mencatat pesan dengan pelacakan perangkat lunak WPP mirip dengan menggunakan layanan pengelogan peristiwa Windows. Driver mencatat ID pesan dan data biner yang tidak diformat dalam file log. Selanjutnya, postprocessor mengonversi informasi dalam file log menjadi bentuk yang dapat dibaca manusia. Namun, pelacakan perangkat lunak WPP mendukung format pesan yang lebih mampu dan fleksibel daripada yang didukung oleh layanan pengelogan peristiwa. Misalnya, pelacakan perangkat lunak WPP memiliki dukungan bawaan untuk alamat IP, GUID, ID sistem, stempel waktu, dan jenis data berguna lainnya. Selain itu, pengguna dapat menambahkan jenis data kustom yang relevan dengan aplikasi mereka.

Gambaran umum proses pelacakan perangkat lunak WPP

Proses dasar untuk menambahkan pelacakan perangkat lunak WPP ke driver atau aplikasi, mencakup langkah-langkah berikut. Jika Anda menggunakan salah satu templat Visual Studio yang disediakan di WDK untuk membuat driver WDF, sebagian besar pekerjaan dilakukan untuk Anda.

  • Tentukan GUID kontrol yang secara unik mengidentifikasi driver atau aplikasi sebagai penyedia pelacakan. Penyedia menentukan GUID ini dalam definisi makro WPP_CONTROL_GUIDS dan dalam file kontrol terkait yang digunakan oleh Tracelog atau Trace Controller lainnya.

  • Tambahkan arahan praprosesor C terkait WPP yang diperlukan dan panggilan makro WPP ke file sumber penyedia, seperti yang dijelaskan dalam Menambahkan Pelacakan Perangkat Lunak WPP ke Driver Windows dan di Referensi Pelacakan Perangkat Lunak WPP.

  • Ubah proyek Visual Studio untuk menjalankan prapemrosem WPP dan membangun driver, seperti yang dijelaskan dalam Langkah 6 menambahkan Pelacakan Perangkat Lunak WPP ke Driver Windows. Anda dapat merujuk ke Preproscessor WPP untuk opsi waktu build lainnya.

  • Instal driver atau komponen. Mulai sesi pelacakan dan rekam pesan pelacakan. Gunakan alat untuk pelacakan perangkat lunak, seperti TraceView, Tracelog, Tracefmt, dan Tracepdb untuk mengonfigurasi, memulai, dan menghentikan sesi pelacakan dan untuk menampilkan dan memfilter pesan pelacakan. Alat-alat ini disertakan dalam Windows Driver Kit (WDK).

Di bagian ini

Catatan Pelacakan Peristiwa untuk Windows (ETW) dan WPP mendukung sebagian besar jenis driver mode kernel dan mode pengguna. Namun, ETW dan WPP menggunakan jenis yang tidak tersedia untuk jenis driver tertentu, seperti driver miniport. Untuk menentukan apakah jenis driver tertentu didukung, tambahkan makro WPP dasar ke driver, seperti WPP_INIT_TRACING dan WPP_CLEANUP. Jika kode tidak dikompilasi karena jenis yang digunakan tidak ditentukan, ETW dan WPP tidak dapat mendukung jenis driver.

Untuk informasi selengkapnya tentang ETW, lihat Pelacakan Peristiwa untuk Windows.

Catatan Penyedia pelacakan WPP hanya dapat diaktifkan oleh satu sesi pelacakan pada satu waktu. Lihat Penyedia WPP untuk informasi selengkapnya.

Untuk informasi tentang rutinitas dukungan pustaka WMI yang mendukung pelacakan perangkat lunak WPP, lihat:

WmiQueryTraceInformation

WmiTraceMessage

WmiTraceMessageVa