TRACE_LOGFILE_HEADER 구조체(evntrace.h)
TRACE_LOGFILE_HEADER 구조에는 이벤트 추적 세션 및 해당 이벤트에 대한 정보가 포함됩니다. ETW 로그 파일의 헤더에 있는 추적 정보 데이터의 원시 데이터 형식입니다. 또한 OpenTrace 에서 반환되고 추적 처리 중에 BufferCallback 에 제공되는 정보의 일부이기도 합니다.
구문
typedef struct _TRACE_LOGFILE_HEADER {
ULONG BufferSize;
union {
ULONG Version;
struct {
UCHAR MajorVersion;
UCHAR MinorVersion;
UCHAR SubVersion;
UCHAR SubMinorVersion;
} VersionDetail;
} DUMMYUNIONNAME;
ULONG ProviderVersion;
ULONG NumberOfProcessors;
LARGE_INTEGER EndTime;
ULONG TimerResolution;
ULONG MaximumFileSize;
ULONG LogFileMode;
ULONG BuffersWritten;
union {
GUID LogInstanceGuid;
struct {
ULONG StartBuffers;
ULONG PointerSize;
ULONG EventsLost;
ULONG CpuSpeedInMHz;
} DUMMYSTRUCTNAME;
} DUMMYUNIONNAME2;
#if ...
PWCHAR LoggerName;
#if ...
PWCHAR LogFileName;
#if ...
RTL_TIME_ZONE_INFORMATION TimeZone;
#else
LPWSTR LoggerName;
#endif
#else
LPWSTR LogFileName;
#endif
#else
TIME_ZONE_INFORMATION TimeZone;
#endif
LARGE_INTEGER BootTime;
LARGE_INTEGER PerfFreq;
LARGE_INTEGER StartTime;
ULONG ReservedFlags;
ULONG BuffersLost;
} TRACE_LOGFILE_HEADER, *PTRACE_LOGFILE_HEADER;
멤버
BufferSize
이벤트 추적 세션 버퍼의 크기(바이트)입니다.
DUMMYUNIONNAME
DUMMYUNIONNAME.Version
추적이 수집된 운영 체제의 버전 번호입니다. VersionDetail 멤버의 롤업입니다. 하위 바이트부터 처음 두 바이트에 는 MajorVersion이 포함되고, 다음 두 바이트에 는 MinorVersion이 포함되고, 다음 두 바이트에 는 SubVersion이 포함되고, 마지막 두 바이트에 는 SubMinorVersion이 포함됩니다.
DUMMYUNIONNAME.VersionDetail
DUMMYUNIONNAME.VersionDetail.MajorVersion
추적이 수집된 운영 체제의 주 버전 번호입니다.
DUMMYUNIONNAME.VersionDetail.MinorVersion
추적이 수집된 운영 체제의 부 버전 번호입니다.
DUMMYUNIONNAME.VersionDetail.SubVersion
예약되어 있습니다.
DUMMYUNIONNAME.VersionDetail.SubMinorVersion
예약되어 있습니다.
ProviderVersion
추적이 수집된 운영 체제의 빌드 번호입니다.
NumberOfProcessors
추적이 수집된 시스템의 프로세서 수입니다.
EndTime
이벤트 추적 세션이 중지된 시간(1601년 1월 1일 자정 이후 100나노초 간격). 이 값은 실시간으로 또는 완료되지 않은 로그 파일(즉, 제대로 닫혀 있지 않음)에서 이벤트를 사용하는 경우 0일 수 있습니다.
TimerResolution
하드웨어 타이머의 해상도(100나노초 단위) 사용법은 EVENT_TRACE_HEADER 대한 설명을 참조하세요.
MaximumFileSize
로그 파일의 최대 크기(메가바이트)입니다.
LogFileMode
이벤트 추적 세션에 대한 로깅 모드입니다. 값 목록은 로깅 모드 상수를 참조하세요.
BuffersWritten
이벤트 추적 세션에서 작성한 총 버퍼 수입니다.
DUMMYUNIONNAME2
DUMMYUNIONNAME2.LogInstanceGuid
예약되어 있습니다.
DUMMYUNIONNAME2.DUMMYSTRUCTNAME
DUMMYUNIONNAME2.DUMMYSTRUCTNAME.StartBuffers
예약되어 있습니다.
DUMMYUNIONNAME2.DUMMYSTRUCTNAME.PointerSize
포인터 데이터 형식의 기본 크기(바이트)입니다.
DUMMYUNIONNAME2.DUMMYSTRUCTNAME.EventsLost
이벤트 추적 세션 중에 손실된 이벤트 수입니다. 추적 로깅 세션에 할당된 메모리가 부족하거나 들어오는 이벤트의 속도가 매우 높기 때문에 이벤트가 주로 손실됩니다.
DUMMYUNIONNAME2.DUMMYSTRUCTNAME.CpuSpeedInMHz
추적이 수집된 시스템의 CPU 속도(메가헤르츠)입니다.
Windows 2000: 이 멤버는 지원되지 않습니다.
LoggerName
이 필드를 사용하지 마세요.
이벤트 추적 세션의 이름은 메모리에서 이 구조에 따라 첫 번째 null로 종료된 문자열입니다.
LogFileName
이 필드를 사용하지 마세요.
이벤트 추적 로그 파일의 이름은 메모리에서 이 구조에 이어 두 번째로 null로 끝나는 문자열입니다. 첫 번째 문자열은 세션의 이름입니다.
TimeZone
BootTime, EndTime 및 StartTime 멤버의 표준 시간대를 포함하는 TIME_ZONE_INFORMATION 구조체입니다.
BootTime
시스템이 시작된 시간(1601년 1월 1일 자정 이후 100나노초 간격). BootTime 은 전역 로거 세션에 기록된 추적에 대해서만 지원됩니다.
PerfFreq
고해상도 성능 카운터의 빈도(있는 경우)입니다.
StartTime
이벤트 추적 세션이 시작된 시간(1601년 1월 1일 자정 이후 100나노초 간격).
ReservedFlags
클록 유형을 지정합니다. 자세한 내용은 WNODE_HEADERClientContext 멤버를 참조하세요.
BuffersLost
이벤트 추적 세션 중에 손실된 총 버퍼 수입니다.
설명
멤버를 설정하기 전에 이 구조체의 메모리를 0으로 초기화해야 합니다.
모든 로그 파일의 첫 번째 이벤트에는 이 구조에 정의된 데이터가 포함됩니다. 이 구조를 사용하여 이벤트 데이터에 액세스하거나 EventTrace_Header MOF 클래스를 사용하여 이벤트 데이터를 디코딩할 수 있습니다. 이 구조를 사용하여 이벤트 데이터를 읽으면 소비자가 로그 파일을 생성한 컴퓨터와 다른 컴퓨터에 있거나 로그 파일이 64비트 컴퓨터의 WOW(32비트) 세션에 기록된 경우 예기치 않은 결과가 반환될 수 있습니다. LoggerName 및 LogFileName 멤버는 포인터이며 PointerSize 멤버에 따라 크기가 다를 수 있기 때문입니다.
요구 사항
지원되는 최소 클라이언트 | Windows 2000 Professional[데스크톱 앱만] |
지원되는 최소 서버 | Windows 2000 Server[데스크톱 앱만] |
머리글 | evntrace.h |