Windows Event Tracing System - ETW, ETL Traces, TraceRPT

Die meisten Administratoren werden nie mit ETL und Traces in Verbindung kommen, da diese meist nur bei einem Microsoft Support Call zum Einsatz kommen. Trotzdem möchte ich diese Funktion hier vorstellen, weil Sie schon Bestandteil des Windows Betriebssystems ist und für Exchange zusätzlich aktiviert werden kann. Sie starten dazu einfach den Windows Performance Monitor:

ETL Trace in Perfmon

Dort finden Sie den Bereich "Protokolle der Ablaufverfolgung". Hier können Sie dann einen neuen Trace starten und dabei entweder die Systemanbieter protokollieren lassen oder so genannte "Nicht Systemanbieter" einbinden.

Das Ergebnis ist dann eine ETL-Datei im angegebenen Verzeichnis, in der verschiedene Ereignisse protokolliert sind

Exchange Trace Provider einschalten

Um nun auch Exchange als Traceanbieter zu aktivieren, benötigt es zweier Registrierungsschlüssel:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSExchangeIS\ParametersSystem]
"RpcEtwTracing"=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\WMI\Trace]
"usePerformanceClock"=dword:00000001

Erst dann könne Sie im Performance Monitor auch den Exchange Information Store als "nicht Systemquelle" addieren.

Exchange als ETl Trace Quelle

Wie sie schon hier erkennen können, können auch andere interessante Quellen in den Trace mit aufgenommen werden. Beachten Sie aber, dass diese Einstellung eine zusätzliche Belastung während des Trace für den Server bedeuten und daher nur bei konkreten Problemen sinnvoll ist.

ETL Dateien auswerten

Dann bleibt nun nur noch die Frage offen, wie diese ETL-Dateien denn auch ausgewertet werden können. Auch hier ist schon wieder alles im Betriebssystem mit enthalten. Das Hilfsprogramm "Trace Report" (tracerpt.exe) dient dazu, aus der binären ETL-Datei eine mehr oder weniger lesbare Reportdatei zu erstellen.

TraceRPT

Das Ergebnis sind dann zwei Dateien, die Details zu den aufgezeichneten Daten enthalten. Welche Daten das sind, ist natürlich abhängig von der Quelle. Hier mal ein kurzer Trace eines Exchange Information Store im "Idle"-Betrieb,

etltrace-dumpfile.csv.txt

etltrace-summary.txt

Sie können die beide Dateien einfach mit Notepad anzeigen lassen. Zugegeben, so sehen Sie erst mal nicht viel aber vielleicht können Sie erahnen, welchen Nutzen es haben kann, die Dauer einzelner Funktionsaufrufe zu erhalten um Engpässe zu erkennen.

Interessant ist dieses Verfahren vor allem, weil es nicht auf Exchange beschränkt ist, sondern auch andere Programme diese Schnittstelle für Debuggingausgaben bereit stellen.

Weitere Links