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:
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.
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.
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,
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
- Snooper - OCS Tools zum Auswerten von OCS Traces
- Windows XP Professional Documentation - Tracerpt
http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/nt_command_tracerpt.mspx?mfr=true - Windows 2003 Server Command Reference
http://technet2.microsoft.com/windowsserver2008/en/library/cb9eaf86-0ef6-4197-b6c8-9cca8a1d723c1033.mspx?mfr=true - Post-processing and Viewing IIS Request-Based Tracing Data (IIS 6.0)
http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/94ded77d-157b-4fa9-a32f-2b3441f70284.mspx?mfr=true - Tracing Events Reference (IIS 6.0)
http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/594174a1-f8d4-4338-a996-9c171e7bc3a2.mspx?mfr=true - How To use Event Tracing für Windows für Performance Analysis
http://download.microsoft.com/download/f/0/5/f05a42ce-575b-4c60-82d6-208d3754b2d6/EventTrace_PerfAnalysis.ppt - Windows Driver Kit: Driver Development Tools Trace Log
http://msdn.microsoft.com/en-us/library/ms797962.aspx - How to Process IIS Admin Trace Log Files using Trace Report (IIS
6.0)
http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/594174a1-f8d4-4338-a996-9c171e7bc3a2.mspx?mfr=true - Tracing Events Reference (IIS 6.0)
http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/757a3990-d8ae-4d72-94af-70fa46edc985.mspx?mfr=true - Windows Driver Kit: Driver Development Tools Trace Message Format
File
http://msdn.microsoft.com/en-us/library/ms797950.aspx - Understanding the Cluster Debug Log in 2008
http://blogs.technet.com/b/askcore/archive/2010/04/13/understanding-the-cluster-debug-log-in-2008.aspx