Поделиться через


Настройка и запуск сеанса частного средства ведения журнала

Частный сеанс трассировки событий — это сеанс трассировки событий в пользовательском режиме, который выполняется в том же процессе, что и его поставщики трассировки событий. Частный сеанс и поставщики, которые он включает, должны находиться в одном процессе. Преимущество использования закрытого сеанса заключается в том, что закрытый сеанс не учитывается при одновременном выполнении не более 64 сеансов трассировки событий.

Настройка и запуск закрытого сеанса аналогична запуску обычного сеанса трассировки событий. Разница заключается в том, что член Wnode.Guidструктуры EVENT_TRACE_PROPERTIES должен содержать GUID поставщика, а не сеанса, а поставщик должен уже зарегистрировать GUID. Обратите внимание, что если также задан режим ведения журнала EVENT_TRACE_PRIVATE_IN_PROC, можно использовать другой GUID для сеанса и поставщика. Дополнительные сведения о запуске обычного сеанса трассировки событий см. в разделе Настройка и запуск сеанса трассировки событий.

Обратите внимание, что вы не можете запускать, останавливать или очищать частный сеанс трассировки из DllMain; Это следует сделать в подпрограммах инициализации и завершения библиотеки DLL.

От Windows 8.1 до Windows 10 версии 1607 функции EnableTraceEx2, а также структуры ENABLE_TRACE_PARAMETERS и EVENT_FILTER_DESCRIPTOR могут использовать полезные данные событий, область и стек для фильтрации по определенным условиям в сеансе средства ведения журнала. Дополнительные сведения о фильтрах полезных данных событий см. в статьях Функции TdhCreatePayloadFilter и TdhAggregatePayloadFilters , а также структуры ENABLE_TRACE_PARAMETERS, EVENT_FILTER_DESCRIPTOR и PAYLOAD_FILTER_PREDICATE .

Начиная с Windows 10 версии 1703 пользователи с низким уровнем привилегий теперь могут запускать частный сеанс средства ведения журнала в запущенных ими процессах. Поставщик больше не требуется регистрировать до включения или запуска закрытого сеанса. Это означает, что поставщик "предварительно включен" так же, как поставщики сеансов, не являющиеся частными. Существует ограничение в 8 частных средств ведения журнала на уровне системы для отдельного процесса. Для повышения производительности в сценариях между процессами рекомендуется использовать фильтрацию для API сеансов (включая ControlTrace, QueryTrace, StartTrace и StopTrace) при запуске частного средства ведения журнала на уровне системы. Обратите внимание, что одни и те же фильтры должны передаваться всем API сеансов. Дополнительные сведения о фильтрах см. в разделе EVENT_TRACE_PROPERTIES_V2.

Дополнительные сведения о запуске сеанса трассировки событий см. в разделе Настройка и запуск сеанса трассировки событий.

Дополнительные сведения о запуске сеанса ведения журнала ядра NT см. в разделе Настройка и запуск сеанса средства ведения журнала ядра NT.

Дополнительные сведения о запуске сеанса глобального средства ведения журнала см. в разделе Настройка и запуск сеанса глобального средства ведения журнала.

Дополнительные сведения о запуске сеанса autoLogger см. в разделе Настройка и запуск сеанса автозалога.

Настройка и запуск сеанса SystemTraceProvider

Настройка и запуск сеанса автоматического входа

Настройка и запуск сеанса трассировки событий

Настройка и запуск сеанса средства ведения журнала ядра NT

EnableTraceEx2

ENABLE_TRACE_PARAMETERS

EVENT_TRACE_PROPERTIES

EVENT_TRACE_PROPERTIES_V2

EVENT_FILTER_DESCRIPTOR

PAYLOAD_FILTER_PREDICATE

TdhAggregatePayloadFilters

TdhCreatePayloadFilter

Обновление сеанса трассировки событий