Verwenden von Ablaufverfolgungstools mit VSS
Um Ablaufverfolgungsinformationen für die VSS-Infrastruktur zu sammeln, können Sie das VssTrace-Tool, das Logman-Tool oder das Tracelog-Tool verwenden. VssTrace ist im Microsoft Windows Software Development Kit (SDK) verfügbar und kann verwendet werden, um VSS-Anwendungen unter Windows 7 und höheren Versionen des Windows-Betriebssystems zu verfolgen. Logman ist ein Ablaufverfolgungscontroller für Ablaufverfolgungsereignisse und Leistungsindikatoren. Er kann auch verwendet werden, um VSS-Anwendungen unter Windows 7 und höhere Versionen des Windows-Betriebssystems zu verfolgen. Tracelog ist im Windows Driver Kit (WDK) enthalten.
Informationen zur Verwendung von Ablaufverfolgungstools mit automatisierter Systemwiederherstellung (ASR) finden Sie unter Verwenden von Ablaufverfolgungstools mit ASR-Anwendungen.
Hinweis
VssTrace, Logman und Tracelog erfordern alle Administratorrechte.
Informationen zu den einzelnen Tools finden Sie in den folgenden Abschnitten:
Verwenden von VssTrace
Verwenden Sie die folgende Syntax, um das VssTrace-Tool über die Befehlszeile auszuführen:
vsstrace command-line-options
Verwenden Sie die folgende Syntax, um eine präzise Befehlszeilenhilfe für das VssTrace-Tool anzuzeigen:
vsstrace -help
Um eine ausführliche Befehlszeilenhilfe für das VssTrace-Tool anzuzeigen, verwenden Sie die folgende Syntax:
vsstrace -help all
VssTrace-Befehlszeilenoptionen
Das VssTrace-Tool verwendet die folgenden Befehlszeilenoptionen:
-
-f Flags
-
Aktivieren Sie die Module, deren Flags durch die Flags-Bitmaske angegeben werden. Jedes Flag entspricht einem VSS-Modul. Wenn Flags null sind, sind keine Module aktiviert. Beachten Sie, dass die meisten Module standardmäßig aktiviert sind. Diese Option kann nicht mit der **+**Module-Option kombiniert werden. For example, vsstrace -f 0 +WRITER +COORD deaktiviert beispielsweise die Ablaufverfolgung aller Module, die standardmäßig aktiviert sind, und ermöglicht die Ablaufverfolgung von VSS-Writern und dem VSS-Dienst. Alternativ ermöglicht vsstrace +f 0xffff -COORD die Ablaufverfolgung aller Module außer dem VSS-Dienst.
Hinweis
Wenn Sie die Option -f zusammen mit der **+**Module-Option verwenden, muss -f vor der **+**Module-Option angezeigt werden.
In der folgenden Tabelle sind der Modulname und das Flag für jedes verfügbare Modul aufgeführt.
Modul Flag Standardmäßig aktiviert. Nachverfolgte Elemente EXCEPT 0x00000001 Ja C++-Ausnahmebehandlung. COORD 0x00000002 Ja Der VSS-Dienst, der auch als VSS-Koordinator bezeichnet wird. SWPRV 0x00000004 Ja Der VSS-Systemschattenkopie-Anbieterdienst. BUCOMP 0x00000008 Ja Die VSS-Anforderungs- und Sicherungsmetadatenverarbeitung. WRITER 0x00000010 Ja VSS Writer-Vorgänge und vom VSS gehostete Writer-Implementierungen, z. B. der Windows Registry Writer. VSSAPI 0x00000020 Ja Verschiedene Funktionen der VSS-API, die von VSSAPI.DLL exportiert wurden. HWDIAG 0x00000040 Ja VSS-Hardwareanbieterinfrastruktur und -vorgänge. ADMIN 0x00000080 Ja VSS-Befehlszeilenprogramme wie VSSADMIN.EXE und DISKSHADOW.EXE. VSSUI 0x00000100 Ja Die Schattenkopien für die Konfigurationsbenutzeroberfläche für freigegebene Ordner. Die Benutzeroberfläche ist nur auf Windows Server-Betriebssystemen verfügbar. TEST 0x00000200 Ja Nicht zutreffend. (Dieses Ablaufverfolgungsmodul ist reserviert.) IOCTL 0x00000400 Ja Details zu FSCTL- und IOCTL-Vorgängen, die der VSS-Dienst durch Aufrufen der DeviceIoControl-Funktion initiiert hat. GEN 0x00000800 Ja Allgemeine VSS-Dienstprogrammfunktionen wie Allocatoren, Zeichenfolgenklassen sowie Registrierungs- und Volumevorgänge. WRXML 0x00001000 No XML-Verarbeitung für Writer-Metadaten. Dieses Modul weist einen sehr hohen Geräuschpegel auf. VSSXML 0x00002000 No XML-Verarbeitungsbasisklassen. Dieses Modul weist einen sehr hohen Geräuschpegel auf. -
**+**Modul
-
Aktivieren Sie das durch Modul angegebene Modul. Mehrere Module können gleichzeitig aktiviert werden. Um die verfügbaren Module auflisten zu können, geben Sie vsstrace –help modules an der Befehlszeilenaufforderung ein.
-
-Modul
-
Deaktivieren Sie das durch Modul angegebene Modul. Um die verfügbaren Module auflisten zu können, geben Sie vsstrace –help modules an der Befehlszeilenaufforderung ein.
-
+pid ProcessId
-
Aktivieren Sie den von ProcessId angegebenen Prozess. Um alle Prozesse zu aktivieren, verwenden Sie „*“ für den Wert von ProcessId. Mehrere pid-Optionen können gleichzeitig angegeben werden. Die Reihenfolge der Optionen bestimmt, welche Prozesse aktiviert oder deaktiviert sind. Um beispielsweise nur den Prozess zu aktivieren, dessen Prozessbezeichner 0xe8c ist, verwenden Sie vsstrace -pid * +pid 0xe8c.
-
-pid ProcessId
-
Deaktivieren Sie den von ProcessId angegebenen Prozess. Um alle Prozesse zu deaktivieren, verwenden Sie „*“ für den Wert von ProcessId. Mehrere pid-Optionen können gleichzeitig angegeben werden. Die Reihenfolge der Optionen bestimmt, welche Prozesse aktiviert oder deaktiviert sind. Wenn Sie beispielsweise alle Prozesse außer dem Prozess deaktivieren möchten, dessen Prozessbezeichner 0xe8c ist, verwenden Sie vsstrace -pid * +pid 0xe8c.
-
+tid ThreadId
-
Aktivieren Sie den von ThreadId angegebenen Thread. Um alle Threads zu aktivieren, verwenden Sie „*“ für den Wert von ThreadId. Mehrere tid-Optionen können gleichzeitig angegeben werden. Die Reihenfolge der Optionen bestimmt, welche Threads aktiviert oder deaktiviert sind. Um beispielsweise nur den Thread zu aktivieren, dessen Prozessbezeichner 0x31a ist, verwenden Sie vsstrace -tid * +tid 0x31a.
-
-tid ThreadId
-
Deaktivieren Sie den von ThreadId angegebenen Thread. Um alle Threads zu deaktivieren, verwenden Sie „*“ für den Wert von ThreadId. Mehrere tid-Optionen können gleichzeitig angegeben werden. Die Reihenfolge der Optionen bestimmt, welche Threads aktiviert oder deaktiviert sind. Wenn Sie beispielsweise alle Threads außer dem Thread deaktivieren möchten, dessen Prozessbezeichner 0x31a ist, verwenden Sie vsstrace -tid * +tid 0x31a.
-
-l Level
-
Verwenden Sie die Ablaufverfolgungsebene, die durch Level angegeben ist. Je höher die Ebene, desto ausführlicher ist die Ablaufverfolgungsausgabe. Jede Stufe umfasst alle unteren Ebenen. Der Standardwert ist 170. Die folgenden Ebenen sind verfügbar.
Ebene Informationen, die in der Ablaufverfolgungsausgabe enthalten sind 000 Keine 020 Schwerwiegende Fehler 030 Ausnahmefehler 040 Fehler 050 Assertionen 060 Warnungen 080 Ausnahmebehandlung 100 Ereignisprotokollaktivität 120 Allgemeine Informationen 140 Codeflow 160 Funktionseingabe und -beendigung 170 Rückgabewerte von Funktionen 180 Funktionsparameter (terse) 190 Funktionsparameter (ausführlich) 200 Ausführliche Informationsebene 1 210 Ausführliche Informationsebene 2 220 Ausführliche Informationsebene 3 230 Schnelle Codeebene 1 240 Schnelle Codeebene 2 250 Schnelle Codeebene 3 255 Alle -
+indent
-
Rückt die formatierte Ablaufverfolgungsausgabe an jeder Funktions- und Unterfunktionsgrenze ein.
-
-indent
-
Die formatierte Ablaufverfolgungsausgabe nicht einrücken.
-
-etl EtlFile
-
Konvertieren Sie die von EtlFile angegebene Logman-Ausgabedatei in ein lesbares Textformat.
-
-o OutputFile
-
Speichern Sie die Ablaufverfolgungsinformationen in der Ausgabedatei, die von OutputFile angegeben wird. Um eine optimale Leistung zu erzielen, sollte sich die Ausgabedatei auf einem Datenträger befinden, der nicht Teil der Schattenkopie ist.
-
-help HelpOption
-
Zeigen Sie die Befehlszeilenhilfe an, wie von HelpOption angegeben. Die gültigen HelpOption-Werte sind Module, Ebenen und Alle. Wenn Sie modules angeben, werden die Module aufgelistet. Wenn Sie levels angeben, werden die verfügbaren Ebenen aufgelistet. Wenn Sie all angeben, wird eine detaillierte Hilfe angezeigt. Wenn keine Optionen verwendet werden, werden präzise Hilfen angezeigt.
Verwenden von Logman
Das folgende Verfahren beschreibt, wie Logman mit Ihrer VSS-Anwendung verwendet wird.
So verwenden Sie Logman mit Ihrer VSS-Anwendung
Verwenden Sie den folgenden Befehl zum Starten der Ablaufverfolgung:
logman start vss -o *x:\*vss.etl -ets -p {9138500e-3648-4edb-aa4c-859e9f7b7c38} 0xfff 170
Hinweis
Ersetzen Sie „x:\“ durch den Pfad zum Verzeichnis, in dem die Ablaufverfolgungsprotokolldatei gespeichert werden soll.
Verwenden Sie den folgenden Befehl zum Beenden der Ablaufverfolgung:
logman stop vss -ets
Die Datei für das Ablaufverfolgungsprotokoll ist *x:\*vss.etl.
Weitere Informationen zum Logman-Tool finden Sie unter Logman.
Verwenden von Tracelog
Das folgende Verfahren beschreibt die Verwendung von Tracelog.
Verwenden von Tracelog
Erstellen Sie eine Textdatei mit dem Namen vss.ctl, die nur den folgenden Text enthält:
9138500e-3648-4edb-aa4c-859e9f7b7c38 vss
Verwenden Sie den folgenden Befehl zum Starten der Ablaufverfolgung:
tracelog -start vss -f *x:\*vss.etl -guid vss.ctl -flag 0xff -level 0xaa
Hinweis
Ersetzen Sie „x:\“ durch den Pfad zum Verzeichnis, in dem die Ablaufverfolgungsprotokolldatei gespeichert werden soll.
Verwenden Sie den folgenden Befehl zum Beenden der Ablaufverfolgung:
tracelog -stop vss
Die Datei für das Ablaufverfolgungsprotokoll ist *x:\*vss.etl.
Weitere Informationen zum Tracelog-Tool finden Sie unter Tracelog.