Aktivieren der Diagnoseablaufverfolgung für MS DTC auf einem Windows 10 Computer
In diesem Artikel wird erläutert, wie Sie die Diagnoseablaufverfolgung für den Microsoft Distributed Transaction Coordinator (MS DTC) auf einem Windows 10-Computer aktivieren.
Ursprüngliche Produktversion: Windows 10
Ursprüngliche KB-Nummer: 926099
Wichtig
Dieser Artikel enthält Informationen zum Bearbeiten der Registrierung. Sie sollten eine Sicherungskopie der Registrierung erstellen, bevor Sie die Registrierung bearbeiten. Sie müssen wissen, wie die Registrierung wiederhergestellt werden kann, wenn ein Problem auftritt. Weitere Informationen zum Sichern, Wiederherstellen und Ändern der Registrierung finden Sie unter Windows-Registrierungsinformationen für fortgeschrittene Benutzer.
Arten von Ablaufverfolgungseinrichtungen
Transaktions-Manager-Ablaufverfolgung
Die Transaktions-Manager-Ablaufverfolgung verfolgt Änderungen des Transaktionszustands nach. Sie wird vom MS DTC-Transaktions-Manager generiert. Die Ausgabe ist im Binärformat, und die Ausgabe muss formatiert werden. Der Transaktions-Manager ist Teil des MS DTC-Diensts.
Communication Manager-Fehlerablaufverfolgung
Die Cm-Fehlerablaufverfolgung (Communication Manager) verfolgt jeden Prozess nach, der die Msdtcprx.dll-Datei lädt und die RPC-Schnittstelle (Remote Procedure Call) von MS DTC verwendet, um mit anderen MS DTC-bezogenen Prozessen zu kommunizieren. Die Ausgabe erfolgt im Textformat. Der 0x8004d00a Fehler ist ein typischer Fehler, für den die Kommunikations-Manager-Fehlerablaufverfolgung nützlich sein kann.
Hinweis
Transaktions-Manager-Ablaufverfolgung und Kommunikations-Manager-Fehlerablaufverfolgung sind unabhängige Prozesse. Sie können die Transaktions-Manager-Ablaufverfolgung und die Kommunikations-Manager-Fehlerablaufverfolgung unabhängig voneinander aktivieren. Sie können sie auch unabhängig voneinander deaktivieren.
Aktivieren der Transaktions-Manager-Ablaufverfolgung
Sie können das MMC-Snap-In (Component Services Microsoft Management Console) verwenden, um die Transaktions-Manager-Ablaufverfolgung zu aktivieren. Gehen Sie dazu wie folgt vor:
Wählen Sie Start, Alle Programme, Zubehör und dann Ausführen aus.
Geben Sie comexp.msc ein, und wählen Sie dann OK aus.
Erweitern Sie Komponentendienste, Erweitern Sie Computer, erweitern Sie Mein Computer, erweitern Sie Distributed Transaction Manager, klicken Sie mit der rechten Maustaste auf Lokaler DTC, und wählen Sie dann Eigenschaften aus.
Wählen Sie die Registerkarte Ablaufverfolgung aus.
Auf der Registerkarte Ablaufverfolgung können Sie die folgenden TM-Ablaufverfolgungsoptionen ändern:
-
Ablaufverfolgungsausgabe
-
Ablaufverfolgungstransaktionen
- Alle Transaktionen nachverfolgen
- Ablaufverfolgung abgebrochener Transaktionen
- Ablaufverfolgung Long-Lived Transaktionen
-
Ablaufverfolgungstransaktionen
-
Ablaufverfolgungsausgabe
Wenn Sie die Tm-Ablaufverfolgungskonfiguration ändern, erkennt der MS DTC-Dienst die Änderungen. Sie müssen den Prozess jedoch nicht wiederverwenden. Wenn Sie beispielsweise die Transaktionen ändern, die nachverfolgt werden, oder den Speicherort der Ablaufverfolgungsdatei, erkennt der MS DTC-Dienst die Änderung in der Registrierung. Sie müssen den MS DTC-Dienst nicht neu starten.
Neues MS DTC-Ablaufverfolgungssystem in Windows
Unter Windows verfügt MS DTC über ein neues und umfangreiches Ablaufverfolgungssystem. Das neue System hat die folgenden Entwurfsziele:
- Zum Hinzufügen einer formatierten Ablaufverfolgung ist nur eine einzelne Codezeile erforderlich.
- Die Ablaufverfolgung ist für Menschen auf Produktionscomputern ohne Netzwerk lesbar.
- Ausgabeoptionen sind flexibel.
- Die Ablaufverfolgung ist schnell.
- Sie müssen den Computer nicht neu starten, um die Optionen zu ändern.
Darüber hinaus enthält der Name der Ablaufverfolgungsprotokolldatei in Windows 10 und Windows Server Technical Preview den Namen des Prozesses, der das Ablaufverfolgungsprotokoll aufgerufen hat. Dies wird durch den Registrierungsschlüssel Ausgabe gesteuert.
Konfigurieren der Ablaufverfolgung
Warnung
Schwerwiegende Probleme können auftreten, wenn die Registrierung mit dem Registrierungs-Editor oder einer anderen Methode unsachgemäß bearbeitet wird. Aufgrund dieser Probleme kann eine Neuinstallation des Betriebssystems erforderlich sein. Microsoft kann nicht garantieren, dass diese Probleme behoben werden können. Das Ändern der Registrierung erfolgt auf eigenes Risiko.
Die Ablaufverfolgungskonfiguration befindet sich auf dem lokalen Knoten in einem Registrierungsschlüssel, der unter dem MS DTC-Registrierungsschlüssel benannt Tracing
ist. Der Tracing
Registrierungsschlüssel enthält die Ablaufverfolgung des Verbindungs-Managers. Zuvor haben Sie den Registrierungsschlüssel verwendet, um die TraceCMErr
Ablaufverfolgung des Verbindungs-Managers zu konfigurieren. Der Tracing
Registrierungsschlüssel enthält die folgenden zwei Unterschlüssel:
-
Sources
: Dieser Unterschlüssel konfiguriert die Art der Ablaufverfolgung. -
Output
: Mit diesem Unterschlüssel wird konfiguriert, wohin die Ablaufverfolgungsausgabe gesendet wird.
Hinweis
Stellen Sie sicher, dass der Prozess auf den Tracing
Registrierungsschlüssel zugreifen kann. Standardmäßig erstellt die Windows-Konfiguration diesen Schlüssel nicht und gewährt keine Berechtigungen für diesen Schlüssel. Sie können die Registrierungs-Editor verwenden, um die Ablaufverfolgungsfunktionalität zu konfigurieren.
Führen Sie die folgenden Schritte aus, um Registrierungseinträge für Ablaufverfolgungsfunktionen zu erstellen:
Wählen SieAlle Programme>starten>Zubehör>Ausführen aus, geben Sie regedit ein, und wählen Sie dann OK aus.
Suchen Sie einen der folgenden Unterschlüssel, und wählen Sie ihn aus:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSDTC\Tracing\Sources
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSDTC\Tracing\Output
Wählen Sie im Menü Bearbeiten die Option Neu und dann den Datentyp des Eintrags aus. Wählen Sie z. B. DWORD (32-Bit)-Wert aus.
Geben Sie den Namen der gewünschten Quelle ein, und drücken Sie dann die EINGABETASTE. Weitere Informationen zu den Quellnamen finden Sie in der Tabelle im Abschnitt Konfigurieren von Quellen .
Klicken Sie mit der rechten Maustaste auf den neuen Registrierungseintrag, wählen Sie Ändern aus, geben Sie den gewünschten Wert in das Feld Wert ein , und wählen Sie dann OK aus.
Wählen Sie im Menü Datei die Option Beenden aus.
Konfigurieren von Quellen
Der Sources
Registrierungsschlüssel enthält einen Satz von DWORD-Registrierungswerten, die in der folgenden Tabelle aufgeführt sind.
Name | Beschreibung |
---|---|
TRACE_MISC | Ablaufverfolgungen, die nicht in die anderen Kategorien kategorisiert werden können |
TRACE_CM | Ablaufverfolgungen im Verbindungs-Manager |
TRACE_TRACE | Die Ablaufverfolgungsinfrastruktur selbst |
TRACE_SVC | Ablaufverfolgungsdienst und .exe Dateistart |
TRACE_GATEWAY | Gatewayquelle |
TRACE_UI | Verfolgt die Benutzeroberfläche nach |
TRACE_CONTACT | Ablaufverfolgung des Kontaktpools und der Kontakte |
TRACE_UTIL | Ablaufverfolgung von Hilfsprogrammroutinen, die von mehreren Speicherorten aufgerufen werden |
TRACE_CLUSTER | Verfolgt den clusterspezifischen Code (Hilfsprogramm) nach. |
TRACE_RESOURCE | Verfolgt den clusterressourcenspezifischen Code nach. |
TRACE_TIP | Tip-Ablaufverfolgungsquelle (Transaction Internet Protocol) |
TRACE_XA | XA Transaction Manager(XATM)-Ablaufverfolgungsquelle |
TRACE_LOG | Protokollablaufverfolgung |
TRACE_MTXOCI | MTS/OCI-Ebene (Mtxoci.dll)-Ablaufverfolgungsquelle |
TRACE_ETWTRACE | Ereignisablaufverfolgung für Windows (ETW)-Ablaufverfolgungsquelle |
TRACE_PROXY | Ablaufverfolgungen, die in der MSDTC-Proxy-DLL generiert werden |
TRACE_KTMRM | Ablaufverfolgung für die Integration in den Kerneltransaktions-Manager |
TRACE_VSSBACKUP | Ablaufverfolgung für die Integration in den Microsoft Visual SourceSafe Sicherungs- und Wiederherstellungsmechanismus |
TRACE_PERFMON | Ablaufverfolgung mit Unterstützung für Leistungsindikatoren |
Der DWORD-Wert sollte eine Zahl zwischen 0 und 255 sein. Der DWORD-Wert gibt die Ebene der Ablaufverfolgung an, die ausgeführt wird. In der folgenden Tabelle sind mögliche DWORD-Werte aufgeführt.
Wert | Beschreibung |
---|---|
0 | const BYTE TRACE_OFF |
1 | const BYTE TRACE_ERROR |
2 | const BYTE TRACE_WARNING |
3 | const BYTE TRACE_INFO |
4 | const BYTE TRACE_VERBOSE |
5 | const BYTE TRACE_VERY_VERBOSE |
6 | const BYTE TRACE_INOUT |
0xF0 | const BYTE TRACE_OBSCURE |
0xff | const BYTE TRACE_EVERYTHING |
Hinweis
Höhere Werte enthalten automatisch niedrigere Werte. Wenn Sie die TRACE_INFO
Ebene aktivieren, wird daher auch die TRACE_ERROR
Ebene aktiviert. Nur sehr wenige Quellen verwenden eine Ablaufverfolgung, die höher als die TRACE_VERBOSE
Ebene ist.
Konfigurieren der Ablaufverfolgungsausgabe
Warnung
Schwerwiegende Probleme können auftreten, wenn die Registrierung mit dem Registrierungs-Editor oder einer anderen Methode unsachgemäß bearbeitet wird. Aufgrund dieser Probleme kann eine Neuinstallation des Betriebssystems erforderlich sein. Microsoft kann nicht garantieren, dass diese Probleme behoben werden können. Das Ändern der Registrierung erfolgt auf eigenes Risiko.
Der Output
Registrierungsschlüssel enthält einen Satz von Werten, die steuern, wohin die Ablaufverfolgungsausgabe gesendet wird. Diese Werte sind wie folgt:
Der
TraceFilePath
Wert (REG_SZ) ist der Stammordner, in dem Ablaufverfolgungsdateien gespeichert werden sollen. Die Ablaufverfolgung wird in eine Datei in einem Ordner mit dem Namen msdtc-X.log geschrieben. In diesem Ordnernamen stellt X die Dezimal-PID des Prozesses dar, der die Datei erstellt. Stellen Sie sicher, dass alle relevanten Prozesse auf den konfigurierten Ordner zugreifen können. Andernfalls gehen Ablaufverfolgungsinformationen verloren. Wenn dieser Wert nicht festgelegt ist, werden Keine Ablaufverfolgungen an eine Datei gesendet.Der
ImageNameInTraceFileNameEnabled
Wert (REG_DWORD) bestimmt, ob der Name der generierten Ablaufverfolgungsprotokolldatei den Imagedateinamen des Prozesses enthält, der das Ablaufverfolgungsprotokoll aufgerufen hat. Wenn dies auf einen Wert ungleich 0 festgelegt ist, wird der Imagedateiname des Prozesses in die generierte Ablaufverfolgungsprotokolldatei eingeschlossen. Wenn dieser Wert auf 0 (null) festgelegt ist, wird der Imagedateiname des Prozesses nicht in die generierte Ablaufverfolgungsprotokolldatei eingeschlossen. Standardmäßig ist der Wert auf 0 (0) festgelegt. Im Folgenden finden Sie ein Beispiel für einen Namen der Ablaufverfolgungsdatei, bei der die generierte Protokolldatei den Prozess enthält:
MSDTC-msdtc.exe-3552.log oder MSDTC-svchost.exe – 3556.logDer
MemoryBufferSize
Wert (REG_DWORD) ist die Größe des Kreispuffers, in dem Ablaufverfolgungsmeldungen gespeichert werden. Wenn dieser Wert auf 0 festgelegt ist, ist die Speicherablaufverfolgung deaktiviert. Standardmäßig beträgt dieser Wert 10 MB. Möglicherweise müssen Sie diesen Wert erhöhen, wenn Sie die ausführliche Ablaufverfolgung aktivieren.Der
DebugOutEnabled
Wert (REG_DWORD) aktiviert oder deaktiviert die Ausgabe an den Debugger. Wenn der Wert ungleich null ist, wird die Ausgabe aktiviert. Dieser Registrierungsschlüssel ist standardmäßigOutput
deaktiviert. Wenn Sie die Fehlerablaufverfolgungskonfiguration des Verbindungs-Managers ändern, werden die Änderungen wirksam, wenn ein Prozess, der die Msdtcprx.dll Datei lädt, wiederverwendet wird. Beispielsweise werden die Änderungen an der Fehlerablaufverfolgungskonfiguration des Verbindungs-Managers wirksam, wenn der MS DTC-Dienstprozess wiederverwendet wird.
Alternativ können Sie eine .reg-Datei erstellen und dann die Datei mithilfe von Registrierungs-Editor importieren. Gehen Sie dazu wie folgt vor:
Erstellen Sie eine neue .reg-Datei, die das folgende Codebeispiel enthält:
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSDTC\Tracing] [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSDTC\Tracing\Output] "DebugOutEnabled"=dword:00000000 "TraceFilePath"="" "MemoryBufferSize"=dword:0000000a "ImageNameInTraceFileNameEnabled"=dword:00000001 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSDTC\Tracing\Sources] "TRACE_MISC"=dword:00000000 "TRACE_CM"=dword:00000000 "TRACE_TRACE"=dword:00000000 "TRACE_SVC"=dword:00000000 "TRACE_GATEWAY"=dword:00000000 "TRACE_UI"=dword:00000000 "TRACE_CONTACT"=dword:00000000 "TRACE_UTIL"=dword:00000000 "TRACE_CLUSTER"=dword:00000000 "TRACE_RESOURCE"=dword:00000000 "TRACE_TIP"=dword:00000000 "TRACE_XA"=dword:00000000 "TRACE_LOG"=dword:00000000 "TRACE_MTXOCI"=dword:00000000 "TRACE_ETWTRACE"=dword:00000000 "TRACE_PROXY"=dword:00000000 "TRACE_KTMRM"=dword:00000000 "TRACE_VSSBACKUP"=dword:00000000
Wählen SieAlle Programme>starten>Zubehör>Ausführen aus, geben Sie regedit ein, und klicken Sie dann auf OK.
Wählen Sie im Menü Datei die Option Importieren aus.
Suchen Sie die Datei, die Sie in Schritt 1 erstellt haben, und wählen Sie dann Öffnen aus. Das Dialogfeld Registrierungs-Editor wird angezeigt.
Wählen Sie OK aus.
Wählen Sie im Menü Datei die Option Beenden aus.
Leistungseffekt
Standardmäßig ist die Ablaufverfolgungsfunktion in Windows deaktiviert. Daher gibt es bei einer regulären Installation keine Auswirkungen auf die Leistung.
Aktivieren Sie die Ablaufverfolgungsfunktionalität auf Produktionscomputern nur, wenn ein Microsoft Customer Support Professional angibt, dass die Ablaufverfolgungsinformationen zum Diagnostizieren eines Problems erforderlich sind. Die Ablaufverfolgung kann sich auf die Computerleistung auswirken. Zuerst müssen Sie das Problem finden und es beheben. Deaktivieren Sie dann sofort die Ablaufverfolgungsfunktion.
Clusterkonfiguration
Stellen Sie bei Clusterinstallationen sicher, dass alle Registrierungseinträge auf allen Knoten diese Registrierungseinträge enthalten. Für alle Knoten, die nicht über diese Registrierungseinträge verfügen, ignoriert der Clustercode die Registrierungseinträge in der freigegebenen Registrierung, da die Registrierungseinträge nicht in der lokalen Computerregistrierung vorhanden sind.