Bagikan melalui


Petunjuk INF AddAutoLogger dan UpdateAutoLogger

Direktif AddAutoLogger dan UpdateAutoLogger digunakan dalam INF DDInstall. Bagian peristiwa. Mereka menentukan karakteristik untuk sesi AutoLogger Pelacakan Peristiwa untuk Windows (ETW) yang merekam peristiwa yang terjadi di awal proses boot sistem operasi. Arahan ini didukung mulai dari Windows 11.

[DDInstall.Events] 

AddAutoLogger=session-name,{SessionGUID},add-autologger-install-section 
UpdateAutoLogger=session-name,update-autologger-install-section 
... 

Entri

nama sesi
Menentukan nama sesi AutoLogger yang akan ditambahkan. Nama ini harus unik di antara kumpulan sesi AutoLogger pada komputer. Disarankan agar nama sesi menyertakan nama perusahaan Anda atau singkatan dari nama perusahaan Anda sehingga tidak bertentangan dengan nama sesi dari perusahaan lain.

SessionGUID
Menentukan nilai GUID yang mengidentifikasi sesi AutoLogger. Ini dapat dinyatakan sebagai nilai GUID eksplisit dari formulir {nnnnnnnn-nnnn-nnnn-nnnn-nnnnnnnnnnnn} atau sebagai token %strkey% yang didefinisikan dalam {nnnnnnnn-nnnn-nnnn-nnnn-nnnnnnnnnnnn} bagian String dari file INF.

add-autologger-install-section
Mereferensikan bagian yang ditentukan inf-writer yang berisi informasi untuk mendaftarkan AutoLogger. Untuk informasi selengkapnya, lihat bagian Keterangan berikut ini.

update-autologger-install-section
Mereferensikan bagian yang ditentukan penulis INF yang berisi informasi untuk menambahkan penyedia ke AutoLogger yang ada. Untuk informasi selengkapnya, lihat bagian Keterangan berikut ini.

Keterangan

Untuk informasi selengkapnya tentang AutoLoggers, lihat Mengonfigurasi dan Memulai Sesi AutoLogger.

Setiap nama bagian yang dibuat penulis INF harus unik dalam file INF dan harus mengikuti aturan umum untuk menentukan nama bagian. Untuk informasi selengkapnya tentang aturan ini, lihat Aturan Sintaks Umum untuk File INF.

Direktif AddAutoLogger harus mereferensikan nama add-autologger-install-section di tempat lain dalam file INF. Setiap bagian memiliki formulir berikut:

[add-autologger-install-section] 

Start=<0 | 1> 
[BufferSize=buffer-size] 
[ClockType=clock-type] 
[DisableRealtimePersistence= <0 | 1>] 
[FileName=path-to-file] 
[FileMax=file-max]
[FlushTimer=flush-timer] 
[LogFileMode=log-file-mode] 
[MaxFileSize=max-file-size] 
[MaximumBuffers=max-buffers] 
[MinimumBuffers=min-buffers] 

(AddAutoLoggerProvider={ProviderGUID},autologger-provider-install-section) 
… 

Setiap add-autologger-install-section harus menyediakan Mulai. Secara opsional, tentukan satu atau beberapa penyedia AutoLogger untuk AutoLogger menggunakan AddAutoLoggerProvider, masing-masing pada baris terpisah. Untuk informasi selengkapnya tentang penyedia AutoLogger dalam file INF, lihat Menambahkan Penyedia AutoLogger di bawah ini.

Direktif UpdateAutoLogger harus mereferensikan update-autologger-install-section bernama di tempat lain dalam file INF. Setiap bagian tersebut memiliki formulir berikut:

[update-autologger-install-section] 

(AddAutoLoggerProvider={ProviderGUID},autologger-provider-install-section) 
… 

Setiap update-autologger-install-section dapat menentukan satu atau beberapa penyedia AutoLogger menggunakan AddAutoLoggerProvider, masing-masing pada baris terpisah. Untuk informasi selengkapnya tentang penyedia AutoLogger dalam file INF, lihat Menambahkan Penyedia AutoLogger di bawah ini.

Entri dan Nilai Add-AutoLogger-Install-Section

Mulai=0 | 1
Menentukan apakah AutoLogger akan dimulai lain kali komputer dimulai ulang. Untuk memulai AutoLogger, atur nilai ini ke 1, jika tidak, atur nilai ini ke 0.

BufferSize=ukuran buffer
Secara opsional menentukan ukuran setiap buffer, dalam kilobyte. BufferSize harus kurang dari satu megabyte. ETW menggunakan ukuran memori fisik untuk menghitung nilai ini jika tidak diatur.

ClockType=jenis jam
Secara opsional menentukan timer yang akan digunakan saat mencatat stempel waktu untuk setiap peristiwa menggunakan nilai numerik berikut, yang dinyatakan baik dalam desimal atau, seperti yang ditunjukkan dalam daftar berikut, dalam notasi heksadesimal. Jika dihilangkan, ini default ke 0x1 (Nilai Penghitung Kinerja).

0x1 (Nilai Penghitung Kinerja)

0x2 (Timer Sistem)

0x3 (Penghitung Siklus CPU)

Untuk deskripsi setiap jenis jam, lihat anggota ClientContext dari WNODE_HEADER.

DisableRealtimePersistence=0 | 1
Secara opsional memungkinkan penonaktifan persistensi real time dengan mengatur nilai ke 1. Defaultnya adalah 0 (diaktifkan). Jika persistensi real time diaktifkan, peristiwa real-time yang tidak dikirimkan pada saat komputer dimatikan akan dipertahankan. Peristiwa kemudian akan disampaikan kepada konsumen saat konsumen terhubung ke sesi berikutnya.

Filename=nama file
Secara opsional menentukan jalur file log yang sepenuhnya memenuhi syarat. Jika jalur tidak ada, akan ada pembuatan upaya terbaik saat pertama kali AutoLogger dimulai. Panjang FileName dibatasi hingga 1024 karakter. File adalah file log berurutan. Jalur file default adalah %DriverData%\<SessionName.etl>.

FileMax=file-maks
Secara opsional menentukan jumlah maksimum instans file log yang dibuat ETW. Setelah jumlah maksimum file dibuat, ETW menimpa file pertama, jika ada. Jumlah maksimum instans file log yang didukung adalah 16. Jangan gunakan fitur ini dengan EVENT_TRACE_FILE_MODE_NEWLINE LogFileMode.

FlushTimer=flush-timer
Secara opsional menentukan seberapa sering, dalam detik, buffer jejak dibersihkan secara paksa. Waktu flush minimum adalah 1 detik. Nilai default adalah 0. Secara default, buffer hanya dibersihkan saat penuh.

LogFileMode=log-file-mode
Secara opsional menentukan satu atau beberapa mode log. Untuk nilai yang mungkin, lihat Konstanta Mode Pengelogan. Nilai defaultnya adalah 0x1 (EVENT_TRACE_FILE_MODE_SEQUENTIAL).

MaxFileSize=max-file-size
Secara opsional menentukan ukuran file maksimum file log, dalam megabyte. Sesi ditutup ketika ukuran maksimum tercapai, kecuali EVENT_TRACE_FILE_MODE_CIRCULAR ditentukan dalam LogFileMode. Untuk menentukan tanpa batas, atur nilai ke 0. Nilai defaultnya adalah 100 mb. Perilaku yang terjadi ketika ukuran file maksimum tercapai tergantung pada nilai LogFileMode.

MaximumBuffers=buffer maksimum
Secara opsional menentukan jumlah maksimum buffer untuk dialokasikan, biasanya jumlah minimum buffer ditambah dua puluh. Nilai ini harus lebih besar dari atau sama dengan nilai MinimumBuffers.

MinimumBuffers=buffer minimum
Secara opsional menentukan jumlah minimum buffer yang akan dialokasikan saat startup. Jumlah minimum buffer yang dapat Anda tentukan adalah dua buffer per prosesor.

TambahkanAutoLoggerProvider={ProviderGUID},autologger-provider-install-section
Secara opsional menentukan penyedia dengan subrektif yang mereferensikan autologger-provider-install-section yang ditentukan INF-writer di tempat lain dalam file INF. Untuk informasi selengkapnya, lihat bagian Menambahkan Penyedia AutoLogger berikut ini.

Menambahkan Penyedia AutoLogger

Dalam bagian add-autologger-install-section dan update-autologger-install-section , Anda dapat menentukan penyedia yang ingin Anda aktifkan dalam sesi menggunakan direktif AddAutoLoggerProvider .

ProviderGUID harus merupakan nilai GUID yang mengidentifikasi penyedia AutoLogger. Ini dapat dinyatakan sebagai nilai GUID eksplisit dari formulir {nnnnnnnn-nnnn-nnnn-nnnn-nnnnnnnnnn} atau sebagai token %strkey% yang ditentukan untuk {nnnnnnnn-nnnn-nnnn-nnnn-nnnn} di bagian String dari file INF.

Sub-direktif AddAutoLoggerProvider juga harus mereferensikan autologger-provider-install-section di tempat lain dalam file. Setiap bagian tersebut memiliki formulir berikut:

[autologger-provider-install-section] 

[Enabled=<0 | 1>] 
[EnableFlags=enable-flags] 
[EnableLevel=enable-level] 
[EnablePropety=enable-property] 
[MatchAnyKeyword=match-any-keyword] 
[MatchAllKeyword=match-all-keyword] 

Entri dan Nilai AutoLogger-Provider-Install-Section

Diaktifkan=0 | 1
Secara opsional memasok apakah penyedia diaktifkan. Untuk mengaktifkan penyedia, atur nilai ini ke 1. Untuk menonaktifkan, atur nilai ke 0. Nilai default adalah 0.

EnableFlags=enable-flags
Secara opsional menentukan kelas peristiwa tempat penyedia menghasilkan peristiwa. Untuk detailnya, lihat parameter EnableFlags dari fungsi EnableTraceEx . Tentukan nama nilai ini jika penyedia tidak mendukung MatchAnyKeyword atau MatchAllKeyword.

EnableLevel=tingkat aktif
Secara opsional memasok tingkat detail yang disertakan dalam peristiwa tersebut. Untuk daftar tingkat yang telah ditentukan sebelumnya, lihat parameter Tingkat fungsi EnableTraceEx .

EnableProperty=enable-property
Secara opsional memasok penyertaan satu atau beberapa item berikut dalam file log:

0x00000001 (EVENT_ENABLE_PROPERTY_SID) = Sertakan dalam data yang diperluas pengidentifikasi keamanan (SID) pengguna.

0x00000002 (EVENT_ENABLE_PROPERTY_TS_ID) = Sertakan dalam data yang diperluas pengidentifikasi sesi terminal.

0x00000004 (EVENT_ENABLE_PROPERTY_STACK_TRACE) = Sertakan dalam data yang diperluas jejak tumpukan panggilan untuk peristiwa yang ditulis menggunakan EventWrite.

0x00000010 (EVENT_ENABLE_PROPERTY_IGNORE_KEYWORD_0) = Memfilter semua peristiwa yang tidak memiliki kata kunci bukan nol yang ditentukan.

0x00000020 (EVENT_ENABLE_PROPERTY_PROVIDER_GROUP) = Menunjukkan bahwa panggilan ke EnableTraceEx2 ini harus mengaktifkan Grup Penyedia daripada Penyedia Peristiwa individual.

0x00000080 (EVENT_ENABLE_PROPERTY_PROCESS_START_KEY) = Sertakan Kunci Mulai Proses dalam data yang diperluas.

0x00000100 (EVENT_ENABLE_PROPERTY_EVENT_KEY) = Sertakan Kunci Peristiwa dalam data yang diperluas.

0x00000200 (EVENT_ENABLE_PROPERTY_EXCLUDE_INPRIVATE) = Memfilter semua peristiwa yang ditandai sebagai peristiwa InPrivate atau berasal dari proses yang ditandai sebagai InPrivate.

MatchAnyKeyword=match-any-keyword
Secara opsional memasok bitmask kata kunci yang menentukan kategori peristiwa yang Anda inginkan untuk ditulis oleh penyedia. Penyedia menulis peristiwa jika salah satu bit kata kunci peristiwa cocok dengan salah satu bit yang diatur dalam masker ini. Untuk menentukan bahwa penyedia menulis semua peristiwa, atur nilai ini ke nol. Misalnya, lihat bagian Keterangan dari fungsi EnableTraceEx .

MatchAllKeyword=match-all-keyword
Secara opsional membatasi kategori peristiwa yang Anda inginkan untuk ditulis oleh penyedia. Jika kata kunci peristiwa memenuhi kondisi MatchAnyKeyword , penyedia akan menulis peristiwa hanya jika semua bit dalam masker ini ada di kata kunci peristiwa. Masker ini tidak digunakan jika MatchAnyKeyword adalah nol. Misalnya, lihat bagian Keterangan dari fungsi EnableTraceEx .

Contoh

[Contoso_Add_AutoLogger_Inst] 
Start = 1 
FileName = %%DriverData%%\Contoso\AutoLoggerLogFile.etl  
AddAutoLoggerProvider = {4b8b1947-ae4d-54e2-826a-1aee78ef05b2}, Contoso_Provider_1_Inst

[Contoso_Update_AutoLogger_Inst] 
AddAutoLoggerProvider= {a55d5a23-1a5b-580a-2be5-d7188f43fae1}, Contoso_Provider_2_Inst

[Contoso_Provider_1_Inst] 
Enabled = 1
EnableProperty = 0x00000001

[Contoso_Provider_2_Inst] 
Enabled = 1 

Kompatibilitas Warisan

Direktif AddAutoLogger dan UpdateAutoLogger didukung mulai dari Windows 11. Untuk mengonfigurasi AutoLogger pada OS downlevel, gunakan direktif AddReg .

[Contoso_AutoLogger_AddReg] 
HKLM,SYSTEM\CurrentControlSet\Control\WMI\Autologger\<autologger-session-name>,Start,0x00010001,1 
HKLM,SYSTEM\CurrentControlSet\Control\WMI\Autologger\<autologger-session-name>,GUID,,{autologger-guid} 
HKLM,SYSTEM\CurrentControlSet\Control\WMI\Autologger\<autologger-session-name>\{autologger-provider-guid},Enabled,0x00010001,1 

Lihat juga

DDInstall. Peristiwa