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 erweiterte Benutzer.
Arten von Ablaufverfolgungseinrichtungen
Ablaufverfolgung des Transaktions-Managers
Die Ablaufverfolgung des Transaktions-Managers (TM) verfolgt Änderungen am Transaktionsstatus. Sie wird vom MS DTC-Transaktionsmanager generiert. Die Ausgabe befindet sich im Binärformat, und die Ausgabe muss formatiert werden. Der Transaktions-Manager ist Teil des MS DTC-Diensts.
Kommunikations-Manager– Fehlerablaufverfolgung
Fehlerablaufverfolgung von Kommunikations-Manager (CM) verfolgt jeden Prozess, der die Msdtcprx.dll Datei lädt und die die REMOTEprozeduraufrufschnittstelle (RPC) von MS DTC verwendet, um mit anderen MS DTC-bezogenen Prozessen zu kommunizieren. Die Ausgabe befindet sich im Textformat. Der 0x8004d00a Fehler ist ein typischer Fehler, für den die Fehlerablaufverfolgung von Kommunikationsmanagern hilfreich sein kann.
Notiz
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 aktivieren. Sie können sie auch unabhängig deaktivieren.
Aktivieren der Transaktions-Manager-Ablaufverfolgung
Sie können das MmC-Snap-In (Component Services Microsoft Management Console) verwenden, um die Ablaufverfolgung von Transaktions-Managern zu aktivieren. Gehen Sie dazu wie folgt vor:
Wählen Sie nacheinander Start, Alle Programme, Zubehör und Ausführen aus.
Geben Sie "comexp.msc" ein, und wählen Sie dann "OK" aus.
Erweitern Sie Komponentendienste, erweitern Sie Computer, erweitern Sie "Arbeitsplatz", erweitern Sie "Verteilter Transaktions-Manager", klicken Sie mit der rechten Maustaste auf "Local 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
- Nachverfolgen von langlebigen 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 oder der Speicherort der Ablaufverfolgungsdatei gespeichert sind, 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
In Windows verfügt MS DTC über ein neues und umfangreiches Ablaufverfolgungssystem. Das neue System hat die folgenden Designziele:
- Es ist nur eine einzelne Codezeile erforderlich, um eine formatierte Ablaufverfolgung hinzuzufügen.
- Die Spur ist von 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 Ausgaberegistrierungsschlüssel gesteuert.
Konfigurieren von 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 Verbindungs-Manager-Ablaufverfolgung. Zuvor haben Sie den Registrierungsschlüssel zum Konfigurieren der TraceCMErr
Verbindungs-Manager-Ablaufverfolgung verwendet. Der Tracing
Registrierungsschlüssel enthält die folgenden beiden Unterschlüssel:
Sources
: Dieser Unterschlüssel konfiguriert die Art der Ablaufverfolgung.Output
: Dieser Unterschlüssel konfiguriert, wo die Ablaufverfolgungsausgabe gesendet wird.
Notiz
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 diesem Schlüssel keine Berechtigungen. Sie können den Registrierungs-Editor verwenden, um die Ablaufverfolgungsfunktion zu konfigurieren.
Führen Sie die folgenden Schritte aus, um Registrierungseinträge für Ablaufverfolgungsfunktionen zu erstellen:
Wählen Sie ">Alle Programme>ausführen>" aus, geben Sie "regedit" ein, und wählen Sie dann "OK" aus.
Suchen Und wählen Sie dann einen der folgenden Unterschlüssel 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. den DWORD-Wert (32-Bit) 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 "Quellen konfigurieren".
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 eine Reihe von DWORD-Registrierungswerten, die in der folgenden Tabelle aufgeführt sind.
Name | Beschreibung |
---|---|
TRACE_MISC | Ablaufverfolgungen, die nicht in die anderen Kategorien fallen. |
TRACE_CM | Ablaufverfolgungen im Verbindungs-Manager. |
TRACE_TRACE | Die eigentliche Ablaufverfolgungsinfrastruktur. |
TRACE_SVC | Ablaufverfolgungen für den Start der EXE-Datei und des Diensts |
TRACE_GATEWAY | Gatewayquelle |
TRACE_UI | Verfolgt die Benutzeroberfläche |
TRACE_CONTACT | Ablaufverfolgungen für den Kontaktpool und für Kontakte. |
TRACE_UTIL | Für Ablaufverfolgungen verwendete Hilfsroutinen, die von unterschiedlichen Speicherorten aus aufgerufen werden. |
TRACE_CLUSTER | Verfolgt den clusterspezifischen Code (Hilfsprogramm) nach. |
TRACE_RESOURCE | Verfolgt den ressourcenspezifischen Clustercode ab. |
TRACE_TIP | Ablaufverfolgungsquelle für Transaktions-Internetprotokoll (TIP) |
TRACE_XA | Ablaufverfolgungsquelle für XA-Transaktions-Manager (XATM). |
TRACE_LOG | Protokollablaufverfolgung. |
TRACE_MTXOCI | MTS/OCI-Ebene (Mtxoci.dll) Ablaufverfolgungsquelle |
TRACE_ETWTRACE | Ereignisablaufverfolgungsquelle für Windows (ETW) |
TRACE_PROXY | Ablaufverfolgungen, die in der MSDTC-Proxy-DLL generiert werden |
TRACE_KTMRM | Ablaufverfolgung für die Integration in Kernel Transaction Manager |
TRACE_VSSBACKUP | Ablaufverfolgung für die Integration mit dem Sicherungs- und Wiederherstellungsmechanismus von Microsoft Visual SourceSafe |
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 Ablaufverfolgungsebene an, die auftritt. 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 |
Notiz
Höhere Werte enthalten automatisch niedrigere Werte. Wenn Sie die TRACE_INFO
Ebene aktivieren, ist die TRACE_ERROR
Ebene daher ebenfalls aktiviert. Sehr wenige Quellen verwenden jede 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, wo die Ablaufverfolgungsausgabe gesendet wird. Die Werte lauten 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 geschrieben, der msdtc-X.log heißt. In diesem Ordnernamen stellt X die dezimale PID des Prozesses dar, der die Datei erstellt. Stellen Sie sicher, dass alle interessanten Prozesse auf den konfigurierten Ordner zugreifen können. Andernfalls gehen Ablaufverfolgungsinformationen verloren. Wenn dieser Wert nicht festgelegt ist, werden Ablaufverfolgungen nicht an eine Datei gesendet.Der
ImageNameInTraceFileNameEnabled
Wert (REG_DWORD) bestimmt, ob der Name der generierten Ablaufverfolgungsprotokolldatei den Bilddateinamen des Prozesses enthält, der das Ablaufverfolgungsprotokoll aufgerufen hat. Wenn dies auf einen Wert ungleich Null festgelegt ist, wird der Name der Bilddatei des Prozesses in die generierte Ablaufverfolgungsprotokolldatei aufgenommen. Wenn dieser Wert auf Null festgelegt ist, wird der Name der Bilddatei des Prozesses nicht in die generierte Ablaufverfolgungsprotokolldatei einbezogen. Standardmäßig ist der Wert auf Null (0) festgelegt. Es folgt ein Beispiel für einen Namen der Ablaufverfolgungsdatei, bei dem 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. Dieser Wert beträgt standardmäßig 10 MB. Sie müssen diesen Wert möglicherweise erhöhen, wenn Sie ausführliche Ablaufverfolgung aktivieren.Der
DebugOutEnabled
(REG_DWORD)-Wert aktiviert oder deaktiviert die Ausgabe für den Debugger. Wenn der Wert nicht null ist, ist die Ausgabe aktiviert. Dieser Registrierungsschlüssel ist standardmäßigOutput
deaktiviert. Wenn Sie die Konfiguration des Verbindungs-Managers für die Fehlerablaufverfolgung ä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 den Registrierungs-Editor verwenden, um die Datei zu 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 Sie ">Alle Programme>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.
Klicken Sie auf OK.
Wählen Sie im Menü Datei die Option Beenden aus.
Leistungseffekt
Standardmäßig ist die Ablaufverfolgungsfunktion in Windows deaktiviert. Daher ist für eine normale Installation kein Leistungseffekt vorhanden.
Aktivieren Sie die Ablaufverfolgungsfunktion auf Produktionscomputern nicht, es sei denn, ein Microsoft Customer Support Professional gibt an, 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 Sie müssen 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. Bei knoten, die nicht über diese Registrierungseinträge verfügen, ignoriert der Clustercode die Registrierungseinträge in der freigegebenen Registrierung, da die Registrierungseinträge in der lokalen Computerregistrierung nicht vorhanden sind.