Bagikan melalui


Eventprovider

Mengonfigurasi penyedia mode pengguna Pelacakan Peristiwa untuk Windows (ETW).

Hierarki Elemen

Sintaks

<EventProvider Id               = IdType
               Name             = string
               Base             = string
               NonPageMemory    = boolean
               Stack            = boolean
               SID              = boolean
               TSID             = boolean
               Level            = unsigendByte
               CaptureStateOnly = boolean
               Strict           = boolean
               ProcessExeFilter = string
               EventKey         = boolean
               ExcludeInPrivate = boolean>

  <!-- Child elements -->
  Keywords,
  CaptureStateOnStart,
  CaptureStateOnSave,
  CaptureStateOnDemand,
  Stacks,
  EventFilters,
  StackFilters,
  EventNameFilters,
  StackEventNameFilters,
  StackKeywordLevelFilter
</EventProvider>

Atribut dan Elemen

Atribut

Atribut Deskripsi Jenis Data Diperlukan Default
Id Mengidentifikasi penyedia peristiwa secara unik. String yang harus memiliki setidaknya satu karakter dan tidak boleh berisi titik dua (:) atau spasi. Ya
Nama Nama penyedia peristiwa. Atribut ini dapat memiliki salah satu nilai berikut:
  • Penyedia Crimson terdaftar, misalnya, "Microsoft-Windows-Search-Core".

  • GUID penyedia, misalnya "49c2c27c-fe2d-40bf-8c4e-c3fb518037e7".

  • Nama penyedia warisan, misalnya "IE6".

  • Nama kasus khusus, seperti "PerfTrack" atau "DotNetProvider".

Ya
ProcessExeFilter Memfilter peristiwa berdasarkan proses .exe nama yang ditentukan. Mengatur data filter dalam EVENT_FILTER_DESCRIPTOR. Ini adalah atribut opsional yang Anda tambahkan ke ID EventProvider di profil WPR. Contohnya:
  • "ProcessExeFilter="wpa.exe"

Tidak
Dasar Menunjukkan basis untuk penyedia. string Tidak
NonPagedMemory Gunakan memori non-halaman untuk sesi pelacakan. boolean Tidak salah
Tumpukan Menangkap tumpukan dengan peristiwa boolean Tidak salah
SID Sertakan pengidentifikasi keamanan (SID) pengguna dalam data yang diperluas dari peristiwa yang dicatat. Mengatur EVENT_ENABLE_PROPERTY_SID. boolean Tidak salah
TSID Sertakan pengidentifikasi sesi terminal dalam data yang diperluas dari peristiwa yang dicatat. Mengatur EVENT_ENABLE_PROPERTY_TS_ID. boolean Tidak salah
Level Menunjukkan nilai tingkat. unsignedByte Tidak Zero, yang diperlakukan ETW sebagai 0xFF.
CaptureStateOnly Mengaktifkan penyedia hanya pada awal atau penyimpanan sesi pelacakan. boolean Tidak salah
Ketat Gagalkan perekaman jejak jika penyedia gagal diaktifkan. boolean Tidak salah
EventKey Sertakan Kunci Peristiwa dalam data yang diperluas dan set bendera EVENT_ENABLE_PROPERTY_EVENT_KEY. boolean Tidak salah
ExecludeInPrivate Filter semua peristiwa yang ditandai sebagai peristiwa InPrivate atau berasal dari proses InPrivate. Mengatur bendera EVENT_ENABLE_PROPERTY_EXCLUDE_INPRIVATE boolean Tidak salah
EnableSilos Memungkinkan sesi pengelogan host untuk mengumpulkan peristiwa Crimson dari silo server. Mengatur bendera EVENT_ENABLE_PROPERTY_ENABLE_SILOS. boolean Tidak salah
ContainerId Menandai peristiwa penyedia dengan informasi kontainer sumber. Mengatur bendera EVENT_ENABLE_PROPERTY_SOURCE_CONTAINER_TRACKING. boolean Tidak salah

Elemen Anak

Elemen Deskripsi Persyaratan
Kata kunci (di EventProvider) Mewakili kumpulan elemen Kata Kunci (dalam EventProvider). Opsional, 1 atau lebih.
CaptureStateOnStart Mewakili kumpulan elemen Kata Kunci (dalam EventProvider) agar peristiwa diambil di awal jejak. Opsional, nol atau 1.
CaptureStateOnSave Mewakili kumpulan elemen Kata Kunci (dalam EventProvider) untuk peristiwa yang akan diambil saat jejak disimpan. Opsional, nol atau 1.
CaptureStateOnDemand Mewakili kumpulan elemen Kata Kunci (dalam EventProvider) agar peristiwa dapat ditangkap saat pengguna memicu dengan wpr -capturestateondemand perintah. Opsional, nol atau 1.
Tumpukan Mewakili kumpulan tumpukan. Untuk penyedia UMGL. Opsional, tepat 1.
EventFilters Mewakili kumpulan filter Id peristiwa. Opsional, tepat 1.
StackFilters Mewakili kumpulan filter tumpukan menurut Id peristiwa. Opsional, tepat 1.
EventNameFilters Mewakili kumpulan filter nama peristiwa. Opsional, tepat 1.
StackEventNameFilters Mewakili kumpulan filter tumpukan menurut nama peristiwa. Opsional, tepat 1.
StackKeywordLevelFilter Mewakili kumpulan filter tumpukan menurut kata kunci dan tingkat Opsional, tepat 1.

Elemen Induk

Elemen Deskripsi
EventProviders Mewakili kumpulan elemen EventProvider .
Profil Mewakili kumpulan kolektor, penyedia, dan profil.

Keterangan

Urutan definisi penyedia penting. Definisi harus muncul dalam urutan berikut dalam file .wprp:

  1. Kolektor
  2. Penyedia sistem
  3. Penyedia peristiwa

Tag XML dalam opsional menentukan kata kunci apa yang akan diaktifkan. Tidak seperti penyedia sistem, tidak ada konstanta tekstual yang ditentukan untuk penyedia peristiwa, sehingga string gaya heksadesimal harus digunakan. Namun, sintaksnya sama dengan untuk penyedia sistem. Jika tidak ada kata kunci yang ditentukan, nilai default nol digunakan (yang diperlakukan oleh ETW sebagai string 0xFFFFFFFFFFFFFFFF).

Penyedia peristiwa turunan memiliki semua atribut penyedia dasar secara default. Mereka dapat ditimpa dengan secara eksplisit menentukannya di penyedia turunan. Untuk informasi selengkapnya, lihat Warisan.

Contoh

Contoh berikut mendefinisikan dua penyedia peristiwa.

<EventProvider
  Id="Win32K-provider"
  Name="Microsoft-Windows-Win32K"
  NonPagedMemory="true"
  Stack="true"> 
  <Keywords>
    <Keyword
      Value="0x240000"/>
  </Keywords>
</EventProvider>

<EventProvider
  Id="Search-Core-provider"
  Name="Microsoft-Windows-Search-Core"/>

Contoh kode berikut menentukan penyedia capture-state.

<EventProvider Id="sample-provider" Name="SampleProvider" NonPagedMemory="true" Level="5">
  <Keywords>
    <Keyword Value="0x98"/> <!-- Provider is enabled with these keywords throughout the tracing session. -->
  </Keywords>
  <CaptureStateOnStart>
    <Keyword Value="0xff4"/> <!-- Provider is enabled with these keywords when tracing is started. -->
  </CaptureStateOnStart>
  <CaptureStateOnSave>
    <Keyword Value="0x118"/> <!-- Provider is enabled with these keywords when tracing is saved. -->
  </CaptureStateOnSave>
</EventProvider>

<EventProvider Id="EventProvider_DWMWin32k_CaptureState" Name="e7ef96be-969f-414f-97d7-3ddb7b558ccc" NonPagedMemory="true" CaptureStateOnly="true" > 
  <!-- CaptureStateOnly="true" means that provider is not enabled throughout the tracing session. -->
  <CaptureStateOnSave>
    <Keyword Value="0x80000"/> <!-- Provider is enabled with these keywords when tracing is saved. -->
  </CaptureStateOnSave>
</EventProvider>

Untuk skenario terkelola, gunakan definisi penyedia peristiwa berikut:

<EventCollectorId Value ="ExampleEventCollector">
  <EventProviders>
    <EventProviderId Value="EventProvider_DotNetProvider" /> <!-- You can use this provider in the profile definition because the provider is declared in the built-in profile -->
    <EventProviderId Value="Another_Example_Provider" />
    </EventProvider>
  </EventProviders>
</EventCollectorId>

Elemen