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

  1. 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.

     

  2. 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

  1. Erstellen Sie eine Textdatei mit dem Namen vss.ctl, die nur den folgenden Text enthält:

    9138500e-3648-4edb-aa4c-859e9f7b7c38 vss

  2. 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.

     

  3. 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.