프라이빗 로거 세션 구성 및 시작
프라이빗 이벤트 추적 세션은 이벤트 추적 공급자와 동일한 프로세스에서 실행되는 사용자 모드 이벤트 추적 세션입니다. 프라이빗 세션 및 사용하도록 설정하는 공급자는 모두 동일한 프로세스에 있어야 합니다. 프라이빗 세션을 사용하는 이점은 프라이빗 세션이 동시에 실행되는 최대 64개의 이벤트 추적 세션에 포함되지 않는다는 것입니다.
프라이빗 세션을 구성하고 시작하는 것은 일반 이벤트 추적 세션을 시작하는 것과 비슷합니다. 차이점은 EVENT_TRACE_PROPERTIES 구조의 Wnode.Guid 멤버가 세션이 아닌 공급자의 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 커널 로거 세션 구성 및 시작