Bagikan melalui


DXGKCB_LOG_ETW_EVENT fungsi panggilan balik (dispmprt.h)

Fungsi DxgkCbLogEtwEvent mencatat peristiwa Pelacakan Peristiwa untuk Windows (ETW).

Sintaks

DXGKCB_LOG_ETW_EVENT DxgkcbLogEtwEvent;

void DxgkcbLogEtwEvent(
  [in] const LPCGUID EventGuid,
  [in] UCHAR Type,
  [in] USHORT EventBufferSize,
  [in] PVOID EventBuffer
)
{...}

Parameter

[in] EventGuid

GUID yang mengidentifikasi peristiwa yang akan dicatat.

[in] Type

Konstanta yang menentukan jenis peristiwa. Konstanta ini didefinisikan dalam Evntrace.h dan memiliki bentuk EVENT_TRACE_TYPE_XX. Jenis diabaikan ketika EventGuid GUID_DXGKDDI_AZURE_TRIAGE_EVENT.

[in] EventBufferSize

Ukuran, dalam byte, dari buffer yang ditujukkan oleh EventBuffer. Ada penalti performa yang signifikan jika buffer lebih besar dari 256 byte.

[in] EventBuffer

Penunjuk ke buffer yang berisi informasi yang akan dicatat. Parameter ini bisa NULL, atau penunjuk ke jenis struktur berikut tergantung pada nilai EventGuid.

Nilai kembali

Tidak ada

Keterangan

Jika pengelogan peristiwa tidak diaktifkan, DxgkCbLogEtwEvent segera kembali tanpa mencatat peristiwa.

Untuk mengaktifkan atau menonaktifkan pengelogan peristiwa, panggil fungsi DxgkDdiControlEtwLogging .

Jika EventBufferSize kurang dari atau sama dengan 256, DxgkCbLogEtwEvent dapat disebut IRQL apa pun. Jika EventBufferSize lebih besar dari 256, DxgkCbLogEtwEvent harus dipanggil di IRQL = PASSIVE_LEVEL.

Contoh: Mencatat peristiwa dengan pencatat peristiwa

Contoh kode berikut menunjukkan cara mencatat peristiwa dengan pencatat peristiwa.

// {A7BF27A0-7401-4733-9FED-FDB51067FECC}
DEFINE_GUID(R200_DUMMY_LOGGING,
0xa7bf27a0, 0x7401, 0x4733, 0x9f, 0xed, 0xfd, 0xb5, 0x10, 0x67, 0xfe, 0xcc);

VOID
DummyTrace(
    HW_DEVICE_EXTENSION* Adapter
    )
{
    Adapter->ddiCallback.DxgkCbLogEtwEvent(&R200_DUMMY_LOGGING,
  EVENT_TRACE_TYPE_INFO,
  0,
  NULL);
}

Mencatat peristiwa driver Azure

Mulai Windows Server 2022 (WDDM 2.9), fungsi panggilan balik DxgkCbLogEtwEvent driver grafis dapat mengekspos peristiwa penting yang relevan dengan triase dan pemantauan Azure. Saat Azure menambahkan penawaran vGPU, akan menjadi lebih penting untuk memiliki mekanisme untuk mengekspos peristiwa penting yang dilihat driver. Sangat penting untuk pemantauan dan kesehatan adalah paparan reset tingkat fungsi (VF TDR) dan reset seluruh GPU (TDR seluruh adaptor). Di masa depan, kerangka kerja ini akan memungkinkan OS untuk mengekspos peristiwa penting tambahan yang mungkin melibatkan perilaku khusus pengemudi yang memiliki nilai triase ketika masalah tiba.

Driver harus menggunakan GUID berikut untuk melaporkan peristiwa driver Azure tertentu:


DEFINE_GUID(GUID_DXGKDDI_AZURE_TRIAGE_EVENT,
0x45125F6F, 0x6132, 0x4082, 0xAD, 0x17, 0xED, 0x27, 0xF8, 0xDD, 0x02, 0xF9);

Peristiwa ini digunakan oleh komponen kernel grafis untuk memberi umpan informasi triase ke alur pemantauan Azure standar yang digunakan untuk triase insiden. Mereka berintegrasi dengan peristiwa grafis lain juga diekspos untuk membangun riwayat peristiwa mesin dan mengekspos kueri yang berguna untuk digunakan dalam pemantauan kesehatan host dan VM yang didukungnya.

Ketika GUID ini digunakan, EventBuffer menunjuk ke struktur DXGKARG_PARTITIONING_EVENT_NOTIFICATION .

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows Vista
Target Platform Desktop
Header dispmprt.h (termasuk Dispmprt.h)
IRQL Lihat bagian Keterangan.

Lihat juga

DXGKARG_PARTITIONING_EVENT_NOTIFICATION

DxgkDdiControlEtwLogging