Поставщики систем
Начиная с Windows 10 сборки пакета SDK 20348 события поставщика трассировки системы можно включить так же, как и другие поставщики трассировки событий Windows с помощью EnableTraceEx2. Различные флаги и маски групп , связанные с поставщиком трассировки системы, были сопоставлены с новыми поставщиками трассировки, называемыми системными поставщиками, и соответствующими ключевыми словами.
Как и включение поставщика трассировки системы напрямую, системные поставщики могут быть включены только сеансом с набором EVENT_TRACE_SYSTEM_LOGGER_MODE .
Справочник по системным поставщикам
- Системный поставщик ALPC
- Поставщик конфигурации системы
- Поставщик ЦП системы
- Поставщик системных гипервизоров
- Поставщик системных прерываний
- Поставщик системных операций ввода-вывода
- Поставщик фильтра системных операций ввода-вывода
- Поставщик блокировки системы
- Поставщик системной памяти
- Поставщик системных объектов
- Поставщик питания системы
- Поставщик системных процессов
- Поставщик системных профилей
- Поставщик системного реестра
- Поставщик планировщика системы
- Системный поставщик 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 |
Поставщик ЦП системы
Предоставляет события, связанные с ЦП.
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 |
Поставщик системных гипервизоров
Предоставляет события, связанные с низкоуровневой оболочкой.
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 |
Поставщик системных операций ввода-вывода
Предоставляет события, относящиеся к нескольким типам операций ввода-вывода, включая диск, кэш и сеть.
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_IO_KW_FILENAME также включается автоматически, если поставщик системной памяти включен с помощью SYSTEM_MEMORY_KW_MEMORY ключевое слово.
Поставщик фильтра системных операций ввода-вывода
Предоставляет события, связанные с фильтрацией операций ввода-вывода, включая время и сбои.
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 ключевое слово также автоматически включает 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, а для поля размера — размер заголовка и используемой части массива PoolTags.
Каждый тег пула — это строка из 4 символов, которая хранится в фильтре как ULONG.
Поставщик системных объектов
Предоставляет события, связанные с диспетчером объектов.
GUID: SystemObjectProviderGuid {febd7460-3d1d-47eb-af49-c9eeb1e146f2}
Ключевое слово | Соответствующие устаревшие флаги и группы |
---|---|
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-5f889d46ff66}
Ключевое слово | Соответствующие устаревшие флаги и группы |
---|---|
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.