다음을 통해 공유


StopTraceA 함수(evntrace.h)

StopTrace 함수는 지정된 이벤트 추적 세션을 중지합니다.

이 함수는 사용되지 않습니다. ControlTrace 함수는 이 함수를 대체합니다.

구문

ULONG WMIAPI StopTraceA(
  TRACEHANDLE             TraceHandle,
  LPCSTR                  InstanceName,
  PEVENT_TRACE_PROPERTIES Properties
);

매개 변수

TraceHandle

중지할 이벤트 추적 세션 또는 0에 대한 핸들입니다. InstanceNameNULL인 경우 0이 아닌 TraceHandle을 지정해야 합니다. 이 매개 변수는 InstanceNameNULL인 경우에만 사용됩니다. 핸들은 StartTrace에서 반환됩니다.

InstanceName

중지할 이벤트 추적 세션의 이름 또는 NULL입니다. TraceHandle이 0인 경우 InstanceName을 지정해야 합니다.

NT 커널 로거 세션을 지정하려면 InstanceNameKERNEL_LOGGER_NAME 설정합니다.

Properties

세션에 대한 최종 속성 및 통계를 수신하는 EVENT_TRACE_PROPERTIES 구조체에 대한 포인터입니다.

새로 초기화된 구조를 사용하는 경우 구조체의 Wnode.BufferSize, Wnode.Guid, LoggerNameOffsetLogFileNameOffset 멤버만 설정하면 됩니다. 최대 세션 이름(1024자) 및 최대 로그 파일 이름(1024자) 길이를 사용하여 버퍼 크기와 오프셋을 계산할 수 있습니다(알 수 없는 경우).

Windows 10 버전 1703부터: 프로세스 간 시나리오에서 더 나은 성능을 위해 이제 시스템 전체 프라이빗 로거에 대한 필터링을 StopTrace에 전달할 수 있습니다. 필터링 정보를 포함하려면 새 EVENT_TRACE_PROPERTIES_V2 구조를 전달해야 합니다. 자세한 내용은 프라이빗 로거 세션 구성 및 시작을 참조하세요.

반환 값

함수가 성공하면 반환 값이 ERROR_SUCCESS.

함수가 실패하면 반환 값은 시스템 오류 코드 중 하나입니다. 다음은 몇 가지 일반적인 오류와 그 원인입니다.

  • ERROR_BAD_LENGTH

    다음 중 하나에 해당합니다.

    • PropertiesWnode.BufferSize 멤버는 잘못된 크기를 지정합니다.
    • 속성 에는 세션 이름 및 로그 파일 이름(사용된 경우)의 복사본을 보관할 충분한 공간이 할당되지 않았습니다.
  • ERROR_INVALID_PARAMETER

    다음 중 하나에 해당합니다.

    • 속성NULL입니다.
    • InstanceNameTraceHandle 은 모두 NULL입니다.
    • InstanceNameNULL 이고 TraceHandle 은 유효한 핸들이 아닙니다.
  • ERROR_ACCESS_DENIED 관리자 권한이 있는 사용자, 성능 로그 사용자 그룹의 사용자 및 LocalSystem, LocalService, NetworkService로 실행되는 서비스만 이벤트 추적 세션을 제어할 수 있습니다. 제한된 사용자에게 추적 세션을 제어할 수 있는 기능을 부여하려면 성능 로그 사용자 그룹에 추가합니다.

    Windows XP 및 Windows 2000: 누구나 추적 세션을 제어할 수 있습니다.

설명

이벤트 추적 컨트롤러는 이 함수를 호출합니다.

이 함수는 사용되지 않습니다. 대신 ControlCode가 설정된 ControlTrace를 사용하여 EVENT_TRACE_CONTROL_STOP.

LogFileModeEVENT_TRACE_FILE_MODE_PREALLOCATE 포함된 경우 StartTrace는 로그 파일을 MaximumFileSize 바이트로 확장합니다. 이 파일은 순환 로그와 순차 로그 모두에 대해 로깅하는 동안 전체 공간을 차지합니다. 로거를 중지하면 로그 파일이 필요한 크기로 줄어듭니다.

DllMain에서 StopTrace를 호출하지 마세요(교착 상태가 발생할 수 있음).

참고

evntrace.h 헤더는 UNICODE 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 StopTrace를 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입에 대한 규칙을 참조하세요.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000 Professional [데스크톱 앱 | UWP 앱]
지원되는 최소 서버 Windows 2000 Server [데스크톱 앱 | UWP 앱]
대상 플랫폼 Windows
헤더 evntrace.h
라이브러리 Windows 8.1 및 Windows Server 2012 R2의 Sechost.lib; Advapi32.lib on Windows 8, Windows Server 2012, Windows 7, Windows Server 2008 R2, Windows Server 2008, Windows Vista 및 Windows XP
DLL Windows 8.1 및 Windows Server 2012 R2의 Sechost.dll, Windows 8, Windows Server 2012, Windows 7, Windows Server 2008 R2, Windows Server 2008, Windows Vista 및 Windows XP에서 Advapi32.dll

추가 정보

ControlTrace

StartTrace