다음을 통해 공유


EventProviderEnabled 함수(evntprov.h)

이벤트 공급자가 이벤트의 수준 및 키워드를 기반으로 특정 이벤트를 생성해야 하는지 여부를 결정합니다.

ETW가 지정된 공급자의 지정된 이벤트를 수신 대기하는 세션이 없음을 빠르게 확인할 수 있으면 FALSE 를 반환합니다. 그렇지 않으면 TRUE를 반환 합니다.

구문

BOOLEAN EVNTAPI EventProviderEnabled(
  [in] REGHANDLE RegHandle,
  [in] UCHAR     Level,
  [in] ULONGLONG Keyword
);

매개 변수

[in] RegHandle

공급자의 등록 핸들입니다. 핸들은 EventRegister에서 제공됩니다.

RegHandleNULL이면 EventProviderEnabledFALSE를 반환합니다.

[in] Level

이벤트의 심각도 또는 중요도를 설명하는 데 사용되는 8비트 숫자입니다. 이벤트 수준 값에 대한 자세한 내용은 EVENT_DESCRIPTOR 참조하세요.

[in] Keyword

이벤트 범주 집합에서 이벤트의 멤버 자격을 나타내는 데 사용되는 64비트 비트 마스크입니다. 이벤트 키워드(keyword) 값에 대한 자세한 내용은 EVENT_DESCRIPTOR 참조하세요.

반환 값

ETW가 지정된 공급자의 지정된 이벤트를 수신 대기하는 세션이 없음을 빠르게 확인할 수 있으면 FALSE 를 반환합니다. 그렇지 않으면 TRUE를 반환 합니다.

설명

이 API는 공급자 핸들, 이벤트 수준 및 이벤트 키워드(keyword) 따라 이벤트를 사용할 수 있는지(즉, 이벤트 소비자 세션이 이벤트를 수신하는 데 관심이 있는지 여부)를 확인하는 간단한 방법을 제공합니다.

참고

이 API는 보수적인 빠른 테스트를 수행합니다. 이 API는 후속 심층 필터링에서 이벤트를 기록할 세션이 없음을 결정하는 특정 경우에 true를 반환할 수 있습니다.

이 API는 EventEnabled에서 제공하는 기능과 유사한 기능을 제공합니다. 공급자가 이벤트의 전체 EVENT_DESCRIPTOR 액세스할 수 있는 경우 공급자는 EventEnabled를 사용해야 합니다. 공급자가 이벤트의 Level 및 Keyword에만 액세스할 수 있는 경우 공급자는 EventProviderEnabled를 사용해야 합니다.

대부분의 이벤트 공급자는 EventProviderEnabled를 직접 호출하지 않습니다.

  • EventWrite API에는 자체 EventProviderEnabled 테스트가 포함되며 이벤트가 사용하도록 설정되지 않은 경우 즉시 반환됩니다.
  • 대부분의 ETW 공급자는 EventWrite 또는 EventProviderEnabled를 직접 호출하는 대신 ETW 프레임워크(예: 매니페스트 또는 TraceLogging)를 사용합니다. ETW 프레임워크는 일반적으로 EventProviderEnabled를 호출하는 대신 사용해야 하는 자체 이벤트 사용 API를 제공합니다.
  • ETW 프레임워크 구현은 일반적으로 EventProviderEnabled를 호출하는 대신 자체 공급자 상태를 검사.

자세한 내용은 EventEnabled를 참조하세요.

요구 사항

   
지원되는 최소 클라이언트 Windows Vista [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 evntprov.h
라이브러리 Advapi32.lib
DLL Advapi32.dll

추가 정보

EventEnabled

EVENT_DESCRIPTOR