從 Windows 10 SDK 組建 20348 開始,系統追蹤提供者的事件可以與其他 ETW 提供者相同的方式來啟用,EnableTraceEx2。 與系統追蹤提供者相關聯的不同旗標和 群組遮罩 已對應至新的追蹤提供者,稱為「系統提供者」,以及比對關鍵詞。
就像直接啟用系統追蹤提供者一樣,系統提供者只能由已設定 EVENT_TRACE_SYSTEM_LOGGER_MODE 的會話啟用。
系統提供者參考
- System ALPC 提供者
- 系統設定提供者
- 系統 CPU 提供者
- 系統 Hypervisor 提供者
- 系統中斷提供者
- 系統IO提供者
- 系統IO篩選提供者
- 系統鎖定提供者
- 系統記憶體提供者
- 系統物件提供者
- 系統電源提供者
- 系統進程提供者
- 系統配置檔提供者
- 系統登錄提供者
- 系統排程器提供者
- System Syscall 提供者
- 系統定時器提供者
系統 ALPC 提供者
提供與 ALPC 系統相關的事件。
GUID: SystemAlpcProviderGuid {fcb9baaf-e529-4980-92e9-ced1a6aadfdf}
| 關鍵詞 | 對應的舊版旗標和群組 |
|---|---|
| SYSTEM_ALPC_KW_GENERAL | PERF_ALPC,EVENT_TRACE_FLAG_ALPC |
系統設定提供者
提供系統設定事件。
GUID:SystemConfigProviderGuid {fef3a8b6-318d-4b67-a96a-3b0f6b8f18fe}
| 關鍵詞 | 對應的舊版旗標和群組 |
|---|---|
| SYSTEM_CONFIG_KW_SYSTEM | PERF_SYSCFG_SYSTEM |
| SYSTEM_CONFIG_KW_GRAPHICS | PERF_SYSCFG_GRAPHICS |
| SYSTEM_CONFIG_KW_STORAGE | PERF_SYSCFG_STORAGE |
| SYSTEM_CONFIG_KW_NETWORK | PERF_SYSCFG_NETWORK |
| SYSTEM_CONFIG_KW_SERVICES | PERF_SYSCFG_SERVICES |
| SYSTEM_CONFIG_KW_PNP | PERF_SYSCFG_PNP |
| SYSTEM_CONFIG_KW_OPTICAL | PERF_SYSCFG_OPTICAL |
系統 CPU 提供者
提供與 CPU 相關的事件。
GUID: SystemCpuProviderGuid {c6c5265f-eae8-4650-aae4-9d48603d8510}
| 關鍵詞 | 對應的舊版旗標和群組 |
|---|---|
| SYSTEM_CPU_KW_CONFIG | PERF_CPU_CONFIG |
| SYSTEM_CPU_KW_CACHE_FLUSH | PERF_CACHE_FLUSH |
| SYSTEM_CPU_KW_SPEC_CONTROL | PERF_SPEC_CONTROL |
系統 Hypervisor 提供者
提供與 Hypervisor 相關的事件。
GUID: SystemHypervisorProviderGuid {bafa072a-918a-4bed-b622-bc152097098f}
| 關鍵詞 | 對應的舊版旗標和群組 |
|---|---|
| SYSTEM_HYPERVISOR_KW_PROFILE | PERF_HV_PROFILE |
| SYSTEM_HYPERVISOR_KW_CALLOUTS | PERF_HV_CALLOUTS |
| SYSTEM_HYPERVISOR_KW_VTL_CHANGE | PERF_VTL_CHANGE |
系統中斷提供者
提供與 DPC 和中斷相關的事件。
GUID: SystemInterruptProviderGuid {d4bbee17-b545-4888-858b-744169015b25}
| 關鍵詞 | 對應的舊版旗標和群組 |
|---|---|
| SYSTEM_INTERRUPT_KW_GENERAL | PERF_INTERRUPT,EVENT_TRACE_FLAG_INTERRUPT |
| SYSTEM_INTERRUPT_KW_CLOCK_INTERRUPT | PERF_CLOCK_INTERRUPT |
| SYSTEM_INTERRUPT_KW_DPC | PERF_DPC,EVENT_TRACE_FLAG_DPC |
| SYSTEM_INTERRUPT_KW_DPC_QUEUE | PERF_DPC_QUEUE |
| SYSTEM_INTERRUPT_KW_WDF_DPC | PERF_WDF_DPC |
| SYSTEM_INTERRUPT_KW_WDF_INTERRUPT | PERF_WDF_INTERRUPT |
| SYSTEM_INTERRUPT_KW_IPI | PERF_IPI |
系統 IO 提供者
提供與多種 IO 相關的事件,包括磁碟、快取和網路。
GUID: SystemIoProviderGuid {3d5c43e3-0f1c-4202-b817-174c0070dc79}
| 關鍵詞 | 對應的舊版旗標和群組 |
|---|---|
| SYSTEM_IO_KW_DISK | EVENT_TRACE_FLAG_DISK_IO |
| SYSTEM_IO_KW_DISK_INIT | PERF_DISK_IO_INIT,EVENT_TRACE_FLAG_DISK_IO_INIT |
| SYSTEM_IO_KW_FILENAME | PERF_FILENAME,EVENT_TRACE_FLAG_DISK_FILE_IO |
| SYSTEM_IO_KW_SPLIT | PERF_SPLIT_IO、EVENT_TRACE_FLAG_SPLIT_IO |
| SYSTEM_IO_KW_FILE | PERF_FILE_IO,EVENT_TRACE_FLAG_FILE_IO |
| SYSTEM_IO_KW_OPTICAL | PERF_OPTICAL_IO,EVENT_TRACE_FLAG_FILE_IO_INIT |
| SYSTEM_IO_KW_OPTICAL_INIT | PERF_OPTICAL_IO_INIT |
| SYSTEM_IO_KW_DRIVERS | PERF_DRIVERS,EVENT_TRACE_FLAG_DRIVER |
| SYSTEM_IO_KW_CC | PERF_CC |
| SYSTEM_IO_KW_NETWORK | PERF_NETWORK,EVENT_TRACE_FLAG_NETWORK_TCPIP |
注意:啟用 SYSTEM_IO_KW_DRIVERS 關鍵詞也會自動啟用SYSTEM_IO_KW_FILENAME。 當系統記憶體提供者使用 SYSTEM_MEMORY_KW_MEMORY 關鍵詞啟用時,系統記憶體提供者也會自動開啟SYSTEM_IO_KW_FILENAME。
系統 IO 篩選提供者
提供與IO篩選相關的事件,包括計時和失敗。
GUID: SystemIoFilterProviderGuid {fbd09363-9e22-4661-b8bf-e7a34b535b8c}
| 關鍵詞 | 對應的舊版旗標和群組 |
|---|---|
| SYSTEM_IOFILTER_KW_GENERAL | PERF_FLT_IO |
| SYSTEM_IOFILTER_KW_INIT | PERF_FLT_IO_INIT |
| SYSTEM_IOFILTER_KW_FASTIO | PERF_FLT_FASTIO |
| SYSTEM_IOFILTER_KW_FAILURE | PERF_FLT_IO_FAILURE |
系統鎖定提供者
提供與核心鎖定機制相關的事件。
GUID: SystemLockProviderGuid {721ddfd3-dacc-4e1e-b26a-a2cb31d4705a}
| 關鍵詞 | 對應的舊版旗標和群組 |
|---|---|
| SYSTEM_LOCK_KW_SPINLOCK | PERF_SPINLOCK |
| SYSTEM_LOCK_KW_SPINLOCK_COUNTERS | PERF_SPINLOCK_CNTRS |
| SYSTEM_LOCK_KW_SYNC_OBJECTS | PERF_SYNC_OBJECTS |
系統記憶體提供者
提供與記憶體管理員相關的事件。
GUID:SystemMemoryProviderGuid {82958ca9-b6cd-47f8-a3a8-03ae85a4bc24}
| 關鍵詞 | 對應的舊版旗標和群組 |
|---|---|
| SYSTEM_MEMORY_KW_GENERAL | PERF_MEMORY |
| SYSTEM_MEMORY_KW_HARD_FAULTS | PERF_HARD_FAULTS,EVENT_TRACE_FLAG_MEMORY_HARD_FAULTS |
| SYSTEM_MEMORY_KW_ALL_FAULTS | PERF_ALL_FAULTS、EVENT_TRACE_FLAG_MEMORY_PAGE_FAULTS |
| SYSTEM_MEMORY_KW_POOL | PERF_POOL |
| SYSTEM_MEMORY_KW_MEMINFO | PERF_MEMINFO |
| SYSTEM_MEMORY_KW_PFSECTION | PERF_PFSECTION |
| SYSTEM_MEMORY_KW_MEMINFO_WS | PERF_MEMINFO_WS |
| SYSTEM_MEMORY_KW_HEAP | PERF_HEAP |
| SYSTEM_MEMORY_KW_WS | PERF_WS |
| SYSTEM_MEMORY_KW_CONTMEM_GEN | PERF_CONTMEM_GEN |
| SYSTEM_MEMORY_KW_VIRTUAL_ALLOC | PERF_VIRTUAL_ALLOC,EVENT_TRACE_FLAG_VIRTUAL_ALLOC |
| SYSTEM_MEMORY_KW_FOOTPRINT | PERF_FOOTPRINT |
| SYSTEM_MEMORY_KW_SESSION | PERF_SESSION |
| SYSTEM_MEMORY_KW_REFSET | PERF_REFSET |
| SYSTEM_MEMORY_KW_VAMAP | PERF_VAMAP,EVENT_TRACE_FLAG_VAMAP |
筆記:
啟用 SYSTEM_MEMORY_KW_MEMORY 關鍵詞也會自動在系統 IO 提供者上啟用SYSTEM_IO_KW_FILENAME。
SYSTEM_MEMORY_KW_POOL啟用的事件支援集區標籤篩選,以便選擇性地只針對特定集區標籤寫入事件。 這會設定為系統記憶體提供者上的 架構化篩選。 PoolTag 篩選條件的建構方式如下:
{ EVENT_FILTER_HEADER Header; ULONG PoolTags[ETW_MAX_POOLTAG_FILTER]; }EVENT_FILTER_HEADER 應該使用標識符設定為 SYSTEM_MEMORY_POOL_FILTER_ID 初始化,並將 size 欄位設定為 Header 的大小加上 PoolTags 陣列的已使用部分。
每個集區標籤都是儲存為篩選中 ULONG 的 4 個字元字串。
系統物件提供者
提供與物件管理員相關的事件。
GUID: SystemObjectProviderGuid {febd7460-3d1d-47eb-af49-c9eeb1e1e146f2}
| 關鍵詞 | 對應的舊版旗標和群組 |
|---|---|
| SYSTEM_OBJECT_KW_HANDLE | PERF_OB_HANDLE |
| SYSTEM_OBJECT_KW_OBJECT | PERF_OB_OBJECT |
系統電源提供者
提供與系統電源狀態相關的事件。
GUID:SystemPowerProviderGuid {c134884a-32d5-4488-80e5-14ed7abb8269}
| 關鍵詞 | 對應的舊版旗標和群組 |
|---|---|
| SYSTEM_POWER_KW_GENERAL | PERF_POWER |
| SYSTEM_POWER_KW_HIBER_RUNDOWN | PERF_HIBER_RUNDOWN |
| SYSTEM_POWER_KW_PROCESSOR_IDLE | PERF_PROCESSOR_IDLE |
| SYSTEM_POWER_KW_IDLE_SELECTION | PERF_IDLE_SELECTION |
| SYSTEM_POWER_KW_PPM_EXIT_LATENCY | PERF_PPM_EXIT_LATENCY |
系統進程提供者
提供與進程相關的事件,包括存留期資訊、映像載入事件和線程相關事件。
GUID: SystemProcessProviderGuid {151f55dc-467d-471f-83b5-5f889d46ff6}
| 關鍵詞 | 對應的舊版旗標和群組 |
|---|---|
| SYSTEM_PROCESS_KW_GENERAL | PERF_PROCESS、EVENT_TRACE_FLAG_PROCESS |
| SYSTEM_PROCESS_KW_INSWAP | PERF_PROCESS_INSWAP |
| SYSTEM_PROCESS_KW_FREEZE | PERF_PROCESS_FREEZE |
| SYSTEM_PROCESS_KW_PERF_COUNTER | PERF_PERF_COUNTER,EVENT_TRACE_FLAG_PROCESS_COUNTERS |
| SYSTEM_PROCESS_KW_WAKE_COUNTER | PERF_WAKE_COUNTER |
| SYSTEM_PROCESS_KW_WAKE_DROP | PERF_WAKE_DROP |
| SYSTEM_PROCESS_KW_WAKE_EVENT | PERF_WAKE_EVENT |
| SYSTEM_PROCESS_KW_DEBUG_EVENTS | PERF_DEBUG_EVENTS,EVENT_TRACE_FLAG_DEBUG_EVENTS |
| SYSTEM_PROCESS_KW_DBGPRINT | PERF_DBGPRINT,EVENT_TRACE_FLAG_DBGPRINT |
| SYSTEM_PROCESS_KW_JOB | PERF_JOB、EVENT_TRACE_FLAG_JOB |
| SYSTEM_PROCESS_KW_WORKER_THREAD | PERF_WORKER_THREAD |
| SYSTEM_PROCESS_KW_THREAD | PERF_THREAD,EVENT_TRACE_FLAG_THREAD |
| SYSTEM_PROCESS_KW_LOADER | PERF_LOADER,EVENT_TRACE_FLAG_IMAGE_LOAD |
系統配置檔提供者
提供分析事件。
GUID: SystemProfileProviderGuid {bfeb0324-1cee-496f-a409-2ac2b48a6322}
| 關鍵詞 | 對應的舊版旗標和群組 |
|---|---|
| SYSTEM_PROFILE_KW_GENERAL | PERF_PROFILE,EVENT_TRACE_FLAG_PROFILE |
| SYSTEM_PROFILE_KW_PMC_PROFILE | PERF_PMC_PROFILE |
系統登錄提供者
提供與登錄相關的事件。
GUID: SystemRegistryProviderGuid {16156bd9-fab4-4cfa-a232-89d1099058e3}
| 關鍵詞 | 對應的舊版旗標和群組 |
|---|---|
| SYSTEM_REGISTRY_KW_GENERAL | PERF_REGISTRY、EVENT_TRACE_FLAG_REGISTRY |
| SYSTEM_REGISTRY_KW_HIVE | PERF_REG_HIVE |
| SYSTEM_REGISTRY_KW_NOTIFICATION | PERF_REG_NOTIF |
系統排程器提供者
提供與排程器相關的事件。
GUID: SystemSchedulerProviderGuid {599a2a76-4d91-4910-9ac7-7d33f2e97a6c}
| 關鍵詞 | 對應的舊版旗標和群組 |
|---|---|
| SYSTEM_SCHEDULER_KW_XSCHEDULER | PERF_XSCHEDULER |
| SYSTEM_SCHEDULER_KW_DISPATCHER | PERF_DISPATCHER,EVENT_TRACE_FLAG_DISPATCHER |
| SYSTEM_SCHEDULER_KW_KERNEL_QUEUE | PERF_KERNEL_QUEUE |
| SYSTEM_SCHEDULER_KW_SHOULD_YIELD | PERF_SHOULD_YIELD |
| SYSTEM_SCHEDULER_KW_ANTI_STARVATION | PERF_ANTI_STARVATION |
| SYSTEM_SCHEDULER_KW_LOAD_BALANCER | PERF_LOAD_BALANCER |
| SYSTEM_SCHEDULER_KW_AFFINITY | PERF_AFFINITY |
| SYSTEM_SCHEDULER_KW_PRIORITY | PERF_PRIORITY |
| SYSTEM_SCHEDULER_KW_IDEAL_PROCESSOR | PERF_IDEAL_PROCESSOR |
| SYSTEM_SCHEDULER_KW_CONTEXT_SWITCH | PERF_CONTEXT_SWITCH,EVENT_TRACE_FLAG_CSWITCH |
系統 Syscall 提供者
提供事件與系統呼叫的相關信息。
GUID:SystemSyscallProviderGuid {434286f7-6f1b-45bb-b37e-95f623046c7c}
| 關鍵詞 | 對應的舊版旗標和群組 |
|---|---|
| SYSTEM_SYSCALL_KW_GENERAL | PERF_SYSCALL,EVENT_TRACE_FLAG_SYSTEMCALL |
系統定時器提供者
提供與核心中定時器相關的事件。
GUID: SystemTimerProviderGuid {4f061568-e215-499f-ab2e-eda0ae890a5b}
| 關鍵詞 | 對應的舊版旗標和群組 |
|---|---|
| SYSTEM_TIMER_KW_GENERAL | PERF_TIMER |
| SYSTEM_TIMER_KW_CLOCK_TIMER | PERF_CLOCK_TIMER |
言論
這個新的啟用機制除了啟用這些事件的既有方法之外。 任何用來運作的程式代碼都會繼續執行。
系統追蹤提供者所產生的事件不會因為這項新功能而變更。 這表示輸出的事件不會標示為從個別系統提供者發出。
如需提供者 GUID 和關鍵字定義的詳細資訊,請參閱 evntrace.h。