다음을 통해 공유


Sync Framework 구성 요소 추적

Sync Framework에서는 여러 구성 요소의 실행을 추적할 수 있으므로, 응용 프로그램 디버깅 중에 유용하게 사용할 수 있습니다. 대부분의 Sync Framework 구성 요소에서 추적은 ETW(Windows용 이벤트 추적) 인프라를 사용하여 네이티브 코드 수준에서 수행됩니다. ETW 인프라에 대한 자세한 내용은 이벤트 추적(Event Tracing)을 참조하십시오.

관리되는 버전의 API를 사용하여 개발하는 경우에도 관리되는 API가 네이티브 API에 대한 씬 래퍼이므로 여전히 ETW를 사용합니다. Sync Framework 데이터베이스 공급자는 .NET Framework 구현에 기반한 관리되는 추적을 제공합니다. 자세한 내용은 방법: 동기화 프로세스 추적을 참조하십시오.

추적 도구 다운로드 및 사용

ETW에 필요한 추적 도구는 Windows의 각 버전에서 사용할 수 있는 Windows 지원 도구에 포함되어 있습니다. 예를 들어, Windows XP SP2용 도구는 이 Microsoft 다운로드 센터 페이지에서 사용할 수 있습니다. 다음 표에서는 Sync Framework 추적과 관련된 도구에 대해 설명합니다.

추적 도구 설명 구문 참조

Tracelog.exe

추적 로깅을 시작, 중지 또는 활성화합니다.

Tracelog 명령 구문

Tracefmt.exe

이벤트 추적 로그 파일(.etl)이나 실시간 추적 세션의 추적 메시지에 서식을 지정하여 표시합니다.

Tracefmt

추적 출력을 보려면 추적 로그를 시작하고, 추적을 활성화한 다음 추적을 보기 위한 서식을 지정합니다.

추적 로거를 시작하려면

추적 로거를 시작하려면 tracelog.exe -start <LoggerName> <LoggerParameters> -f <PathToEtlFile>에 로거 이름, 추적 파일 이름 그리고 파일 기록 방법을 제어하는 여러 매개 변수를 지정합니다. 예를 들어, 다음 명령을 사용할 수 있습니다.

tracelog.exe -start "Sync" -paged -b 32 -max 100 -cir 20 -ls -f %TEMP%\SyncFramework.etl

추적을 활성화하려면

추적을 활성화하려면 다음과 같이 추적할 구성 요소의 GUID, 어떤 하위 구성 요소를 추적할지 나타내는 비트 마스크 플래그 및 추적 수준을 나타내는 정수를 지정합니다. tracelog.exe - enable <LoggerName> -guid <ComponentTracingId> -flags <Flags> -level <Level>. 이 예제에서는 Sync Framework 핵심 구성 요소와 모든 하위 구성 요소의 추적을 추적 수준 4(오류가 아닌 경우를 포함하는 정보 메시지)로 활성화합니다.

tracelog.exe -enable "Sync" -guid #5978339c-8ab2-467e-bb85-8832659d5ed0 -flags 0xffff -level 4

Sync Framework의 전체 옵션 목록은 이 항목의 Sync Framework 추적 참조를 참조하십시오.

추적 파일에 서식을 지정하여 표시하려면

추적을 보려면 로거를 플러시하고 Microsoft 다운로드 센터에서 Sync Framework용으로 제공되는 .tmf 파일을 사용하여 이진 추적 파일에 서식을 지정합니다. "Sync" 로거에서 추적을 보려면 다음과 유사한 명령을 사용합니다.

  1. 로거를 플러시하려면 tracelog.exe -flush "Sync"를 실행합니다.

  2. .tmf 파일을 Sync Framework 설치 경로(Program Files\Microsoft SDKs\Microsoft Sync Framework\v2.0)에서 %TEMP%\TMF와 같은 작업 디렉터리로 복사합니다.

  3. 파일에 서식을 지정하려면 tracefmt.exe %TEMP%\SyncFramework.etl -p %TEMP%\TMF -o %TEMP%\SyncFrameworkTrace.txt를 실행합니다.

  4. 파일을 보려면 %TEMP%\SyncFrameworkTrace.txt를 엽니다.

추적을 중지하려면

앞서 시작한 "Sync" 로거를 중지하려면 tracelog.exe -stop "Sync"를 실행합니다.

Sync Framework 추적 참조

다음 표에서는 Sync Framework의 각 구성 요소를 나타내는 GUID를 보여 줍니다.

구성 요소 구성 요소 추적 ID

핵심 프레임워크 및 런타임

5978339c-8ab2-467e-bb85-8832659d5ed0

단순 공급자

69c896b3-e183-428d-9e30-4b519b156828

웹 동기화 구성 요소

0958c02f-01cb-4b28-badf-1431c83a931e

Metadata Storage Service

67161b7f-60ff-4368-832e-670f2327a7e4

File Synchronization Provider

b5fac8e8-25e0-4468-926e-54cd8514f8a0

추적 플래그

다음 표에서는 tracelog.exe의 -flags 매개 변수로 전달하여 어떤 하위 구성 요소를 추적할지 지정할 수 있는 비트 마스크 플래그를 보여 줍니다.

핵심 프레임워크 및 런타임 플래그

추적 플래그 이름 비트 마스크 설명

TRACE_MSG_KNOWLEDGE

0x0001

동기화 정보 연산

TRACE_MSG_SYNC_SERVICES

0x0002

응용 프로그램 동기화 서비스 및 공급자 동기화 서비스 같은 동기화 서비스

TRACE_MSG_SYNC_SESSION

0x0004

동기화 세션 및 동기화 세션 상태

TRACE_MSG_CHANGE_APPLIER

0x0008

알림 변경 내용 적용자

TRACE_MSG_CHANGE_BATCH

0x0010

일괄 변경 내용

TRACE_MSG_CHANGE

0x0020

개별 변경 내용

TRACE_MSG_FILTER

0x0040

변경 내용 필터링

TRACE_MSG_IN_MEMORY_CONFLICT_LOG

0x0080

메모리 내 충돌 로그

TRACE_MSG_CHANGE_APPLICATION_SERVICES

0x0100

고급 변경 적용 서비스

단순 공급자 플래그

추적 플래그 이름 비트 마스크 설명

TRACE_MSG_SIMPLESYNCWRAPPER

0x0001

단순 공급자(정의된 하위 구성 요소 없음)

웹 동기화 구성 요소 플래그

추적 플래그 이름 비트 마스크 설명

TRACE_MSG_FEEDSYNC

0x0001

웹 동기화 구성 요소(정의된 하위 구성 요소 없음)

Metadata Storage Service 플래그

추적 플래그 이름 비트 마스크 설명

TRACE_MSG_METADATA_STORE

0x0001

Metadata Storage Service(정의된 하위 구성 요소 없음)

File Synchronization Provider 플래그

추적 플래그 이름 비트 마스크 설명

TRACE_MSG_FSP

0x0001

File Synchronization Provider(정의된 하위 구성 요소 없음)

추적 수준

다음 표에서는 Sync Framework에 사용되는 추적 수준을 보여 줍니다. 수준이 높아지면 로깅되는 정보가 많아지며, 수준은 누적됩니다. 예를 들어, 수준 4 추적에는 수준 1-3의 모든 정보와 추가 정보가 포함됩니다.

추적 수준 설명

TRACE_LEVEL_NONE

0

추적 안 함

TRACE_LEVEL_CRITICAL

1

비정상적 끝내기 또는 종료

TRACE_LEVEL_ERROR

2

심각한 오류

TRACE_LEVEL_WARNING

3

문제를 나타낼 수 있는 경고

TRACE_LEVEL_INFORMATION

4

오류가 아닌 경우를 포함하는 정보

TRACE_LEVEL_METADATA_INFORMATION

5

동기화 메타데이터에 대한 정보

TRACE_LEVEL_FUNCTION

6

각 함수가 시작되고 종료되는 시기에 대한 정보

참고 항목

개념

Sync Framework 문제 해결