Ablaufverfolgung für Sync Framework-Komponenten
Sync Framework ermöglicht die Ablaufverfolgung für die Ausführung mehrerer Komponenten. Dies kann beim Debuggen einer Anwendung hilfreich sein. Für die meisten der Sync Framework-Komponenten wird die Ablaufverfolgung auf Ebene des systemeigenen Codes mithilfe der Ereignisablaufverfolgung für Windows (Event Tracing for Windows, ETW)-Infrastruktur ausgeführt. Weitere Informationen über die ETW-Infrastruktur finden Sie unter Ereignisablaufverfolgung.
Selbst wenn Sie für die verwaltete Version einer API entwickeln, verwenden Sie weiterhin ETW, da die verwaltete API ein schlanker Wrapper über der systemeigenen API ist. Sync Framework-Datenbankanbieter stellen eine verwaltete Ablaufverfolgung auf Grundlage der .NET Framework-Implementierung bereit. Weitere Informationen finden Sie unter Vorgehensweise: Ablaufverfolgung des Synchronisierungsvorgangs.
Herunterladen und Verwenden der Ablaufverfolgungtools
Die für ETW erforderlichen Ablaufverfolgungstools sind in den Windows-Supporttools enthalten, die für jede Version von Windows verfügbar sind. Die Tools für Windows XP SP2 sind beispielsweise auf dieser Seite vom Microsoft Download Center erhältlich. Die für die Sync Framework-Ablaufverfolgung relevanten Tools werden in der folgenden Tabelle beschrieben:
Ablaufverfolgungstool | Beschreibung | Syntaxverweis |
---|---|---|
Tracelog.exe |
Startet, beendet oder aktiviert die Ablaufprotokollierung. |
|
Tracefmt.exe |
Formatiert Ablaufverfolgungsmeldungen aus einer Ereignisablaufverfolgungs-Protokolldatei (ETL-Datei) oder aus einer Echtzeit-Ablaufverfolgungssitzung. |
Um die Ausgabe einer Ablaufverfolgung anzuzeigen, starten Sie das Ablaufverfolgungsprotokoll, aktivieren die Ablaufverfolgung und formatieren anschließend die Ablaufverfolgung für die Anzeige.
So starten Sie eine Ablaufverfolgungsprotokollierung
Um eine Ablaufverfolgungsprotokollierung zu starten, geben Sie einen Namen für die Protokollierung, einen Namen für die Ablaufverfolgungsdatei sowie einige Parameter ein, durch die festgelegt wird, wie die Datei geschrieben wird: tracelog.exe -start <LoggerName> <LoggerParameters> -f <PathToEtlFile>
. Beispielsweise kann der folgende Befehl verwendet werden:
tracelog.exe -start "Sync" -paged -b 32 -max 100 -cir 20 -ls -f %TEMP%\SyncFramework.etl
So aktivieren Sie die Ablaufverfolgung
Geben Sie zur Aktivierung der Ablaufverfolgung die GUID der Komponente an, deren Ablauf verfolgt werden soll, eine Bitmaske von Flags, um anzuzeigen, für welche Unterkomponenten der Ablauf verfolgt werden soll, und eine ganze Zahl, die die Ablaufverfolgungsebene darstellt: tracelog.exe -
enable <LoggerName> -guid <ComponentTracingId> -flags <Flags> -level <Level>
. In diesem Beispiel wird die Ablaufverfolgung für die Sync Framework-Kernkomponente und alle ihre Unterkomponenten auf einer Ablaufverfolgungsebene von 4 (Informationsmeldungen, die Nichtfehlerfälle beinhalten) aktiviert:
tracelog.exe -enable "Sync" -guid #5978339c-8ab2-467e-bb85-8832659d5ed0 -flags 0xffff -level 4
Eine vollständige Liste der Optionen für Sync Framework finden Sie in diesem Thema unter Ablaufverfolgungsreferenz für Sync Framework.
So formatieren Sie die Ablaufverfolgungsdatei und zeigen sie an
Um eine Ablaufverfolgung anzuzeigen, entleeren Sie die Protokollierung und formatieren die binäre Ablaufverfolgungsdatei mithilfe der TMF-Dateien, die für Sync Framework im Microsoft Download Center verfügbar sind. Mit Befehlen wie dem folgenden können Sie die Ablaufverfolgung über die „Sync“-Protokollierung abrufen:
Führen Sie zum Entleeren der Protokollierung
tracelog.exe -flush "Sync"
aus.Kopieren Sie die TMF-Dateien vom Sync Framework-Installationspfad (Programme\Microsoft SDKs\Microsoft Sync Framework\v2.0) in ein Arbeitsverzeichnis, wie z. B.
%TEMP%\TMF
.Führen Sie zum Formatieren der Datei
tracefmt.exe %TEMP%\SyncFramework.etl -p %TEMP%\TMF -o %TEMP%\SyncFrameworkTrace.txt
aus.Öffnen Sie
%TEMP%\SyncFrameworkTrace.txt
, um die Datei anzuzeigen.
So beenden Sie die Ablaufverfolgung
Um die zuvor gestartete „Sync“-Protokollierung zu beenden, führen Sie tracelog.exe -stop "Sync"
aus.
Ablaufverfolgungsreferenz für Sync Framework
In der folgenden Tabelle sind die GUIDs aufgeführt, die die einzelnen Sync Framework-Komponenten darstellen:
Komponente | Komponentenablaufverfolgungs-ID |
---|---|
Hauptframework und Laufzeit |
5978339c-8ab2-467e-bb85-8832659d5ed0 |
Einfache Anbieter |
69c896b3-e183-428d-9e30-4b519b156828 |
Websynchronisierungskomponenten |
0958c02f-01cb-4b28-badf-1431c83a931e |
Metadaten-Speicherdienst |
67161b7f-60ff-4368-832e-670f2327a7e4 |
Dateisynchronisierungsanbieter |
b5fac8e8-25e0-4468-926e-54cd8514f8a0 |
Ablaufverfolgungsflags
In den folgenden Tabellen sind die Bitmaskenflags aufgeführt, die an den -flags
-Parameter von tracelog.exe übergeben werden können, um anzugeben, für welche Unterkomponenten der Ablauf verfolgt werden soll:
Hauptframework und Laufzeitflags
Name des Ablaufverfolgungsflags | Bitmaske | Beschreibung |
---|---|---|
TRACE_MSG_KNOWLEDGE |
0x0001 |
Synchronisierungswissensvorgänge |
TRACE_MSG_SYNC_SERVICES |
0x0002 |
Synchronisierungsdienste wie Anwendungssynchronisierungsdienste und Anbietersynchronisierungsdienste |
TRACE_MSG_SYNC_SESSION |
0x0004 |
Synchronisierungssitzung und Zustand der Synchronisierungssitzung |
TRACE_MSG_CHANGE_APPLIER |
0x0008 |
Der benachrichtigende Änderungsanwender |
TRACE_MSG_CHANGE_BATCH |
0x0010 |
Der Änderungsbatch |
TRACE_MSG_CHANGE |
0x0020 |
Die einzelne Änderung |
TRACE_MSG_FILTER |
0x0040 |
Änderungsfilterung |
TRACE_MSG_IN_MEMORY_CONFLICT_LOG |
0x0080 |
Konfliktprotokoll im Arbeitsspeicher |
TRACE_MSG_CHANGE_APPLICATION_SERVICES |
0x0100 |
Erweiterte Änderungsanwendungsdienste |
Einfache Anbieterflags
Name des Ablaufverfolgungsflags | Bitmaske | Beschreibung |
---|---|---|
TRACE_MSG_SIMPLESYNCWRAPPER |
0x0001 |
Einfache Anbieter (keine Unterkomponenten definiert) |
Websynchronisierungskomponenten-Flags
Name des Ablaufverfolgungsflags | Bitmaske | Beschreibung |
---|---|---|
TRACE_MSG_FEEDSYNC |
0x0001 |
Websynchronisierungskomponenten (keine Unterkomponenten definiert) |
Metadaten-Speicherdienstflags
Name des Ablaufverfolgungsflags | Bitmaske | Beschreibung |
---|---|---|
TRACE_MSG_METADATA_STORE |
0x0001 |
Metadaten-Speicherdienst (keine Unterkomponenten definiert) |
Dateisynchronisierungsanbieter-Flags
Name des Ablaufverfolgungsflags | Bitmaske | Beschreibung |
---|---|---|
TRACE_MSG_FSP |
0x0001 |
Dateisynchronisierungsanbieter (keine Unterkomponenten definiert) |
Ablaufverfolgungsebenen
In der folgenden Tabelle sind die von Sync Framework verwendeten Ablaufverfolgungsebenen aufgeführt. Eine Erhöhung der Ebene steht für eine Erhöhung der Ausführlichkeit der Protokollierung, und die Ebenen sind kumulativ. Eine Ablaufverfolgung der Ebene 4 enthält beispielsweise alle Informationen der Ebenen 1 bis 3 sowie zusätzliche Informationen:
Ablaufverfolgungsebene | Wert | Beschreibung |
---|---|---|
TRACE_LEVEL_NONE |
0 |
Keine Ablaufverfolgung |
TRACE_LEVEL_CRITICAL |
1 |
Nicht normaler Abbruch oder Beendigung |
TRACE_LEVEL_ERROR |
2 |
Schwere Fehler |
TRACE_LEVEL_WARNING |
3 |
Warnungen, die möglicherweise auf Probleme hinweisen |
TRACE_LEVEL_INFORMATION |
4 |
Informationen, die Nichtfehlerfälle beinhalten |
TRACE_LEVEL_METADATA_INFORMATION |
5 |
Informationen über Synchronisierungsmetadaten |
TRACE_LEVEL_FUNCTION |
6 |
Informationen über den Zeitpunkt, zu dem die einzelnen Funktionen eingegeben und beendet wurden |