WMI 작업 추적
Windows Vista부터 WMI 서비스는 WMI 로그 파일사용하지 않습니다. 대신 ETW(Windows용 이벤트 추적) 사용하며 이벤트는 이벤트 뷰어 또는 Wevtutil 명령줄 도구를 통해 사용할 수 있습니다.
이 항목에서는 다음 섹션에 대해 설명합니다.
- 이벤트 뷰어 통해 WMI 이벤트 가져오기
- 명령 프롬프트에서 WMI 추적을 사용하도록 설정
- WPP 기반 WMI 추적 사용
- 관련 항목
이벤트 뷰어를 통해 WMI 이벤트 가져오기
WMITracing.log 파일에는 WMI가 추적하는 이벤트가 포함됩니다. 그러나 이진 파일입니다. 이러한 이벤트를 사용자가 읽을 수 있는 형식으로 보려면 이벤트 뷰어사용합니다.
기본적으로 WMI 이벤트는 추적되지 않습니다. 이 절차에서는 이벤트 뷰어 사용하여 WMI 이벤트 추적을 사용하도록 설정하고 WMI 이벤트를 찾는 방법을 설명합니다. wevtutil 명령줄 도구를 통해 동일한 작업을 수행할 수 있습니다.
이벤트 뷰어에서 WMI 이벤트를 보려면
- 이벤트 뷰어여십시오. 보기 메뉴에서 분석 및 디버그 로그 표시를 클릭합니다. 애플리케이션 및 서비스 로그에서 Microsoft | Windows | WMI 활동의 추적 채널 로그를 찾으십시오.
- 추적 로그를 마우스 오른쪽 버튼으로 클릭하고 로그 속성을 선택하십시오. 로깅 사용 확인란을 클릭하여 WMI 이벤트 추적을 시작합니다. 채널에 대한 자세한 내용은 Windows 이벤트 로그 이벤트 로그 및 채널을 참조하세요.
- WMI 이벤트가 WMI 작업대한 이벤트 창에 나타납니다. 목록에서 이벤트를 두 번 클릭하여 자세한 정보를 확인합니다. XML 보기 또는 친숙한 보기 형식으로 이벤트를 볼 수 있습니다.
이벤트 ID 필드에는 다음 정보가 포함된 값이 표시됩니다.
-
이벤트 1
-
특정 작업에 대한 이벤트 시퀀스의 시작입니다. 각 시퀀스에 대해 한 번 발생합니다.
이벤트 1의 이벤트 필드는 다음과 같습니다.
- GroupOperationID 특정 클라이언트에 대해 보고된 모든 이벤트에 사용되는 고유 식별자입니다.
- OperationId 작업 순서를 나타냅니다.
- 작업 WMI에 대한 연결 또는 요청을 지정합니다.
- 사용자 스크립트를 실행하거나 CIM Studio를 통해 WMI에 요청하는 계정을 나타냅니다.
- 네임스페이스 연결이 만들어진 WMI 네임스페이스를 표시합니다.
예를 들어 스크립트는 Win32_Service같은 WMI 클래스의 모든 인스턴스를 요청할 수 있습니다. 첫 번째 작업은 WMI에 대한 연결일 수 있습니다.
-
"이벤트 2"
-
작업을 구성하는 이벤트입니다. 시퀀스에서 하나 이상의 발생이 존재합니다.
이벤트 2의 이벤트 필드는 다음과 같습니다.
- GroupOperationID 이벤트가 발생하는 시퀀스를 나타냅니다.
- GroupOperationID 이벤트가 발생하는 시퀀스를 나타냅니다.
- ProviderName 데이터를 제공하는 공급자의 이름을 나타냅니다.
- 경로 개체의 WMI 경로입니다.
예를 들어 작업은 Win32_Service열거형일 수 있습니다.
-
이벤트 3
-
특정 작업에 대한 이벤트 시퀀스의 끝입니다. 각 시퀀스에 대해 한 번 발생합니다.
GroupOperationID만 표시됩니다.
명령 프롬프트에서 WMI 추적 활성화
Wevtutil 명령줄 도구를 통해 WMI 이벤트 추적을 사용하도록 설정할 수도 있습니다. 다음 명령을 사용합니다. Wevtutil.exe sl Microsoft-Windows-WMI-Activity/Trace /e:true. WMI 이벤트 원본은 Microsoft-Windows-WMI입니다. Wevtutil.exe에 대한 자세한 내용은 Windows 이벤트 로그를 참조하세요.
WPP 기반 WMI 추적 사용
Windows Vista부터 시작하는 Windows 운영 체제에서 WMI는 부팅 프로세스 중에 활성 추적 채널을 만듭니다. 채널 이름이 WMI_Trace_Session. 오류만 채널에 기록됩니다.
Windows WPP(소프트웨어 추적 전처리기)는 이진 파일에 정보를 기록합니다. 파일을 읽으려면 먼저 파일을 읽을 수 있는 텍스트 형식으로 변환해야 합니다. WDK(Windows 드라이버 키트) tracefmt.exe이라는 도구를 사용하여 번역을 수행합니다. 이 도구에는 연결된 일부 파일에 저장된 정보가 필요합니다. 파일은 %SystemRoot%\System32\wbem\tmf 디렉터리에 있으며 .tmf 파일 이름 확장명이 있습니다. 이 도구에는 실제로 단일 .tmf 파일이 필요합니다. 모든 .tmf 파일을 다른 .tmf 파일에 연결하여 단일 파일을 만듭니다. .tmf 파일에 대한 자세한 내용은 추적 메시지 형식 파일참조하세요.
tracelog.exe 및 tracefmt.exe 명령줄 도구를 가져오는 WDK(Windows 드라이버 키트) 설치한 후 다음 단계를 수행하여 WPP 기반 WMI 추적을 수집합니다.
WPP 기반 WMI 추적 보려면
단일 .tmf 파일을 만들려면 관리자 권한 명령 프롬프트 창을 열고 %SystemRoot%\System32\wbem\tmf 디렉터리로 이동합니다.
형식 복사 /y %SystemRoot%\System32\wbem\tmf\*.tmf %SystemRoot%\System32\wbem\tmf\wmi.tmf. 그러면 다른 모든 .tmf 파일의 내용이 포함된 wmi.tmf 파일이 만들어집니다.
tracelog -flush WMI_Trace_Session입력합니다. 그러면 디스크의 WPP 버퍼가 초기화됩니다.
type set TRACE_FORMAT_PREFIX = [%9!d!]%8!04X!.%3!04X!.%3!04X!::%4!s! [%1!s!](%!COMPNAME!:%!FUNC !:%2!s!). tracefmt 도구는 각 추적 메시지에 몇 가지 기본 정보를 추가합니다. TRACE_FORMAT_PREFIX 환경 변수를 설정하여 포함되는 정보를 구성할 수 있습니다. 사용되는 구문에 대한 자세한 내용은 추적 메시지 접두사참조하세요.
tracefmt -tmf %systemroot%\system32\wbem\tmf\wmi.tmf -o OUTPUT.TXT %systemroot%\system32\wbem\logs\WMITracing.log입력합니다. 이진 형식에서 읽을 수 있는 텍스트 형식으로 변환을 수행합니다.
메모장 %systemroot%\system32\wbem\tmf\OUTPUT.TXT를 입력하십시오. 그러면 메모장에서 추적 파일이 열립니다.
다음은 수행해야 할 수 있는 다른 WPP 관련 작업입니다.
WPP 기반 WMI 추적을 중지하려면
- tracelog -stop WMI_Trace_Session을 입력합니다.
WPP 기반 WMI 추적을 시작하려면
- tracelog -start WMI_Trace_Session -guid #1FF6B227-2CA7-40f9-9A66-980EADAA602E -rt -level 5 -flag 0x7 -f MYTRACE.BIN
Windows Vista: 기본적으로 WPP 기반 WMI 추적은 오류 메시지만 포함하는 수준 2로 설정됩니다. 정보 메시지도 포함하려면 수준을 4로 설정합니다. WMI의 모든 영역은 기본적으로 추적됩니다. 추적할 수 있는 세 가지 고유 영역은 Core(flag=0x1), ESS(flag=0x2) 및 Prov(flag=0x4)입니다. 위의 시작 명령에서 플래그 0x7 세 영역을 모두 추적합니다.
Windows 7: 기본적으로 WPP 기반 WMI 추적을 사용하지 않도록 설정하고 수준 0으로 설정합니다. WPP 기반 WMI 추적을 사용하려면 이 기능을 사용하도록 설정하고 오류 메시지의 경우 수준 2로 설정하거나 오류 메시지와 정보 메시지 모두에 대해 수준 4로 설정해야 합니다.
모든 WPP 추적 세션을 나열하려면
- tracelog -l입력합니다.
WMI WPP 추적 세션에 대한 정보를 나열하려면
- 입력 tracelog -l | findstr /i "wmi_trace".
WMI WPP 추적 세션 매개 변수를 보려면
- tracelog -q WMI_Trace_Session를 입력하십시오.
관련 항목