다음을 통해 공유


추적 로깅 참조

다음 topics C/C++ TraceLogging API에 대한 정보를 제공합니다.

참고

C/C++ 코드에서 이벤트를 생성하고 이벤트가 컴파일 시간에 정의된 경우 이 섹션에 설명된 API를 사용합니다. 그렇지 않으면 .NET 코드에서 이벤트를 생성하는 경우 .NET EventSource 클래스를 사용합니다. 그렇지 않으면 winRT(Windows 런타임)를 사용하는 경우 LoggingChannel을 사용합니다. 그렇지 않으면 TraceLoggingDynamic과 같은 커뮤니티 지원 옵션을 사용할 수 있습니다.

TraceLogging은 ETW(Windows용 이벤트 추적)를 기반으로 하며 매니페스트 기반 ETW 또는 WPP보다 사용하기 쉽습니다. TraceLogging을 사용하면 구조화된 데이터를 포함하는 이벤트를 생성하고 ETW 활동을 사용하여 이벤트 상관 관계를 지원하며 디코딩을 위해 별도의 계측 매니페스트 XML 파일이 필요하지 않습니다.

TraceLoggingProvider.h는 사용자 또는 커널 모드의 C/C++ 개발자에게 권장되는 API입니다. 다음 링크는 C/C++ API에 대해 설명합니다.

WINVER(사용자 모드) 값은 TraceLoggingProvider.h가 동작하는 방식에 영향을 줍니다.

  • 를 포함 <windows.h><windows.h> 하기 전에 WINVER을 설정하지 않으면 WINVER이 SDK 버전에 해당하는 기본값으로 설정됩니다.
  • WINVER이 0x0602(Windows 8) 이상으로 설정된 TraceLoggingProvider.h를 사용하는 경우 프로그램이 Windows Vista 또는 Windows 7에서 실행되지 않을 수 있습니다(TraceLoggingProvider.h는 RTM 버전의 Windows Vista 또는 Windows 7에 없는 EventSetInformation을 직접 사용하려고 시도합니다).
  • WINVER이 0x0600(Windows Vista) 또는 0x0601(Windows 7)로 설정된 TraceLoggingProvider.h를 사용하는 경우 프로그램은 호환성을 위해 구성되고 지정된 버전의 Windows에서 작동합니다(TraceLoggingProvider.h는 GetProcAddress를 통해 EventSetInformation을 호출합니다(사용 가능한 경우).