Компоненты трассировки платформы Sync Framework
Платформа Sync Framework позволяет отслеживать выполнение нескольких компонентов, что полезно при отладке приложений. Для большинства компонентов платформы Sync Framework трассировка ведется на уровне машинного кода с помощью инфраструктуры средства отслеживания событий для Windows (ETW). Дополнительные сведения об инфраструктуре трассировки событий Windows см. в разделе Трассировка событий.
Средство трассировки событий Windows применяется даже в том случае, если при разработке используется управляемая версия API, так как управляемая версия API является оболочкой собственного интерфейса API. Поставщики баз данных платформы Sync Framework поддерживают управляемую трассировку на основе реализации .NET Framework. Дополнительные сведения см. в разделе Как трассировать процесс синхронизации.
Загрузка и использование средств трассировки
Средства трассировки, необходимые для средства трассировки событий Windows, включены в пакет средств поддержки Windows, доступный для каждой версии Windows. Например, средства для Windows XP SP2 доступны на следующей странице Центра загрузки Майкрософт. Средства, относящиеся к трассировке платформы Sync Framework, описаны в следующей таблице.
Средство трассировки | Описание | Справочник по синтаксису |
---|---|---|
Tracelog.exe |
Запускает, останавливает или включает ведение журнала трассировки. |
|
Tracefmt.exe |
Форматирует и отображает сообщения трассировки из файла журнала трассировки событий (ETL) или из сеанса трассировки в реальном времени. |
Для просмотра выходных данных трассировки запустите журнал трассировки, включите трассировку, а затем отформатируйте результаты трассировки для просмотра.
Запуск журнала трассировки
Для запуска регистратора трассировки укажите его имя, имя файла трассировки и несколько параметров, управляющих порядком записи в файл: 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 в этом разделе.
Форматирование и просмотр файла трассировки
Просмотр результатов трассировки, сброс регистратор и форматирование двоичного файла трассировки с помощью TMF-файлов, доступных для платформы Sync Framework в центре загрузок Майкрософт. Используйте команды, аналогичные следующим, чтобы просмотреть результаты трассировки из регистратора «Sync».
Чтобы сбросить регистратор, выполните команду
tracelog.exe -flush "Sync"
.Скопируйте TMF-файлы из каталога установки Sync Framework (Program Files\Microsoft SDKs\Microsoft Sync Framework\v2.0) в рабочий каталог, например
%TEMP%\TMF
.Для форматирования этого файла выполните команду
tracefmt.exe %TEMP%\SyncFramework.etl -p %TEMP%\TMF -o %TEMP%\SyncFrameworkTrace.txt
.Для просмотра результатов откройте файл
%TEMP%\SyncFrameworkTrace.txt
.
Остановка трассировки
Для остановки ранее запущенного средства ведения журнала «Sync» выполните команду tracelog.exe -stop "Sync"
.
Справочник по трассировке в платформе Sync Framework
В следующей таблице приведены идентификаторы GUID, представляющие каждый компонент платформы Sync Framework.
Компонент | Идентификатор трассировки компонента |
---|---|
Базовая платформа и среда времени выполнения |
5978339c-8ab2-467e-bb85-8832659d5ed0 |
Простые поставщики |
69c896b3-e183-428d-9e30-4b519b156828 |
Компоненты веб-синхронизации |
0958c02f-01cb-4b28-badf-1431c83a931e |
Служба хранилища метаданных |
67161b7f-60ff-4368-832e-670f2327a7e4 |
Служба синхронизации файлов |
b5fac8e8-25e0-4468-926e-54cd8514f8a0 |
Флаги трассировки
В следующих таблицах показаны битовые флаги, которые можно передать через параметр -flags
программы tracelog.exe для задания набора трассируемых вспомогательных компонентов.
Флаги базовой среды и среды времени выполнения
Имя флага трассировки | Битовая маска | Описание |
---|---|---|
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 |
Компоненты веб-синхронизации (вспомогательные компоненты не определены) |
Флаги службы хранилища метаданных
Имя флага трассировки | Битовая маска | Описание |
---|---|---|
TRACE_MSG_METADATA_STORE |
0x0001 |
Служба хранилища метаданных (вспомогательные компоненты не определены) |
Флаги службы синхронизации файлов
Имя флага трассировки | Битовая маска | Описание |
---|---|---|
TRACE_MSG_FSP |
0x0001 |
Служба синхронизации файлов (вспомогательные компоненты не определены) |
Уровни трассировки
В следующей таблице показаны уровни трассировки, используемые платформой 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 |
Сведения о входе и выходе из каждой функции |