Componentes de seguimiento de Sync Framework
Sync Framework permite realizar el seguimiento de la ejecución de varios componentes, lo que es útil durante la depuración de la aplicación. Para la mayoría de los componentes de Sync Framework, el seguimiento se realiza en el nivel de código nativo utilizando la infraestructura de Seguimiento de eventos para Windows (ETW). Para obtener más información acerca de la infraestructura de ETW, vea Seguimiento de eventos.
Aunque se desarrolle con la versión administrada de una API, todavía se utiliza ETW porque la API administrada es un contenedor delgado de la API nativa. Los proveedores de base de datos de Sync Framework proporcionan seguimiento administrado que se basa en la implementación de .NET Framework. Para obtener más información, vea Realizar el seguimiento del proceso de sincronización.
Descargar y utilizar las herramientas de seguimiento
Las herramientas de seguimiento que ETW requiere se incluyen en las Herramientas de soporte de Windows, que están disponibles para cada versión de Windows. Por ejemplo, las herramientas para Windows XP SP2 están disponibles en la página Centro de descarga de Microsoft. Las herramientas pertinentes para el seguimiento de Sync Framework se describen en la tabla siguiente:
Herramienta de seguimiento | Descripción | Referencia de sintaxis |
---|---|---|
Tracelog.exe |
Inicia, detiene o habilita el registro de seguimiento. |
|
Tracefmt.exe |
Aplica formato y muestra los mensajes de seguimiento de un archivo de registro de seguimiento de eventos (.etl) o una sesión de seguimiento en tiempo real. |
Para ver la salida de un seguimiento, inicie un registro de seguimiento, habilite el seguimiento y, a continuación, aplique formato al seguimiento para la visualización.
Para iniciar un registrador de seguimiento
Para iniciar un registrador de seguimiento, especifique un nombre de registrador, un nombre de archivo de seguimiento y varios parámetros que controlen cómo se escribe el archivo: tracelog.exe -start <LoggerName> <LoggerParameters> -f <PathToEtlFile>
. Por ejemplo, se puede usar el comando siguiente:
tracelog.exe -start "Sync" -paged -b 32 -max 100 -cir 20 -ls -f %TEMP%\SyncFramework.etl
Para habilitar el seguimiento
Para habilitar el seguimiento, especifique el GUID del componente al que se va a realizar el seguimiento, una máscara de bits de marcas que indican qué subcomponentes van a ser objeto de seguimiento y un entero que represente el nivel de seguimiento: tracelog.exe -``enable <LoggerName> -guid <ComponentTracingId> -flags <Flags> -level <Level>
. En este ejemplo, se habilita el seguimiento del componente principal de Sync Framework y todos sus subcomponentes, con un nivel de seguimiento 4 (mensajes informativos que incluyen casos que no son de error):
tracelog.exe -enable "Sync" -guid #5978339c-8ab2-467e-bb85-8832659d5ed0 -flags 0xffff -level 4
Para obtener una lista completa de las opciones en Sync Framework, vea Referencia de seguimiento de Sync Framework en este tema.
Para aplicar formato y ver el archivo de seguimiento
Para ver un seguimiento, vacíe el registrador y aplique formato al archivo de seguimiento binario utilizando los archivos .tmf que están disponibles para Sync Framework en el Centro de descarga de Microsoft. Utilice comandos similares a los siguientes para ver el seguimiento del registrador de "Sync":
Para vaciar el registrador, ejecute
tracelog.exe -flush "Sync"
.Copie los archivos .tmf de la ruta de acceso de instalación de Sync Framework (Archivos de programa\Microsoft SDKs\Microsoft Sync Framework\v2.0) en un directorio de trabajo, como
%TEMP%\TMF
.Para aplicar formato al archivo, ejecute
tracefmt.exe %TEMP%\SyncFramework.etl -p %TEMP%\TMF -o %TEMP%\SyncFrameworkTrace.txt
.Para ver el archivo, abra
%TEMP%\SyncFrameworkTrace.txt
.
Para detener el seguimiento
Para detener el registrador de "Sync" que se inició anteriormente, ejecute tracelog.exe -stop "Sync"
.
Referencia de seguimiento de Sync Framework
En la tabla siguiente se muestran los GUID que representan cada componente de Sync Framework:
Componente | Identificador de seguimiento de componente |
---|---|
Tiempo de ejecución y marco principal |
5978339c-8ab2-467e-bb85-8832659d5ed0 |
Proveedores simples |
69c896b3-e183-428d-9e30-4b519b156828 |
Componentes de sincronización web |
0958c02f-01cb-4b28-badf-1431c83a931e |
Metadata Storage Service |
67161b7f-60ff-4368-832e-670f2327a7e4 |
Proveedor de sincronización de archivos |
b5fac8e8-25e0-4468-926e-54cd8514f8a0 |
Marcas de seguimiento
En las tablas siguientes se muestran las marcas de máscara de bits que se pueden pasar al parámetro -flags
de tracelog.exe para especificar a qué subcomponentes se les debe realizar un seguimiento:
Marcas de tiempo de ejecución y marco principales
Nombre de la marca de seguimiento | Máscara de bits | Descripción |
---|---|---|
TRACE_MSG_KNOWLEDGE |
0x0001 |
Operaciones de conocimiento de sincronización |
TRACE_MSG_SYNC_SERVICES |
0x0002 |
Servicios de sincronización, como servicios de sincronización de aplicación y servicios de sincronización de proveedor |
TRACE_MSG_SYNC_SESSION |
0x0004 |
Sesión de sincronización y estado de sesión de sincronización |
TRACE_MSG_CHANGE_APPLIER |
0x0008 |
El aplicador de cambios de notificación |
TRACE_MSG_CHANGE_BATCH |
0x0010 |
El lote de cambios |
TRACE_MSG_CHANGE |
0x0020 |
El cambio individual |
TRACE_MSG_FILTER |
0x0040 |
Filtrado de cambios |
TRACE_MSG_IN_MEMORY_CONFLICT_LOG |
0x0080 |
El registro de conflictos en memoria |
TRACE_MSG_CHANGE_APPLICATION_SERVICES |
0x0100 |
Servicios de aplicación de cambios avanzados |
Marcas de proveedores simples
Nombre de la marca de seguimiento | Máscara de bits | Descripción |
---|---|---|
TRACE_MSG_SIMPLESYNCWRAPPER |
0x0001 |
Proveedores simples (no se definen subcomponentes) |
Marcas de componentes de sincronización web
Nombre de la marca de seguimiento | Máscara de bits | Descripción |
---|---|---|
TRACE_MSG_FEEDSYNC |
0x0001 |
Componentes de sincronización web (no se definen subcomponentes) |
Marcas de Metadata Storage Service
Nombre de la marca de seguimiento | Máscara de bits | Descripción |
---|---|---|
TRACE_MSG_METADATA_STORE |
0x0001 |
Metadata Storage Service (no se definen subcomponentes) |
Marcas de proveedor de sincronización de archivos
Nombre de la marca de seguimiento | Máscara de bits | Descripción |
---|---|---|
TRACE_MSG_FSP |
0x0001 |
Proveedor de sincronización de archivos (no se definen subcomponentes) |
Niveles de seguimiento
En la tabla siguiente se muestran los niveles de seguimiento utilizados por Sync Framework: Un aumento en el nivel representa un aumento en el nivel de detalle de registro y los niveles son acumulativos. Por ejemplo, un nivel de seguimiento 4 contiene toda la información de los niveles 1 a 3 e información adicional:
Nivel de seguimiento | Valor | Descripción |
---|---|---|
TRACE_LEVEL_NONE |
0 |
No existe seguimiento |
TRACE_LEVEL_CRITICAL |
1 |
Salida o finalización anómalas |
TRACE_LEVEL_ERROR |
2 |
Errores irrecuperables |
TRACE_LEVEL_WARNING |
3 |
Advertencias que podrían revelar problemas |
TRACE_LEVEL_INFORMATION |
4 |
Información que incluye casos que no son de error |
TRACE_LEVEL_METADATA_INFORMATION |
5 |
Información acerca de los metadatos de sincronización |
TRACE_LEVEL_FUNCTION |
6 |
Información sobre cuándo se entra y se sale de cada función |