ExMon

Manchmal hat ein Exchange Server eine hohe Last und sie wissen nicht genau warum. Mit ExMon können Sie die erforderliche Daten erfassen, um bis auf den jeweiligen Benutzer Aussagen zur Belastung und Antwortzeit finden zu können. Sie können so zum einen verifizieren, ob die Benutzer sich zurecht über eine lausige Performance beschweren. Sie können aber auch vielleicht den Prozess ermitteln, der ihren Server über Gebühr belastet.

Als am 7.April 2005 im Exchange Blog (http://msexchangeteam.com//archive/2005/04/06/403409.aspx) der Hinweis auf das Programm ExMon auftauchte, war der Weg zum Download, zur Installation und einer ersten Begutachtung nicht weit. Verspricht ExMon endlich wirklich auch einen Blick in die Zugriffe der MAPI-Clients, der bislang nahezu unmöglich war (Abgesehen von Tools wie NTOP ,die anhand der Netzwerkbenutzung einfache Rückschlüsse zugelassen haben).

ExMon hingegen beschränkt sich auf den MAPI-Verkehr der Clients, d.h. misst keine Zugriffe per POP3, SMTP, HTTP etc. Dafür kann ExMon aber pro Benutzer folgende Daten aufzeichnen:

  • IP Adresse
    Die Netzwerkadresse des Clients
  • Microsoft Office Outlook® Version und Betriebsart
    Die Version sehen Sie zwar auch schon im Exchange System Manager aber hier kommt auch die Betriebsart (Cached Mode oder klassisch) hinzu
  • Performancedaten des Clients
    Outlook meldet mit jedem RPC-Call statistische Daten an den Server zurück, z.B.:
    • CPU Auslastung des Clients
    • Latenzzeit des Prozessors beim Exchange Server
    • Latenzzeit des Netzwerks und der Verarbeitung von Outlook
    • Übertragene Datenmenge
  • Clientprozessname
    Zudem wird auch der Name des Prozesses ermittelt. So können Sie sehen, wer MAPI nutzt, d.h. neben Outlook sind ja auch Programme wie Word (Serienbriefe), ActiveSync und eigene Entwicklungen Nutzer ihres Exchange Servers

Alles also sehr interessante Daten, die ein Administrator ansonsten nicht in Erfahrung bringen könnte. Allerdings ist es dazu erforderlich, ExMon "AUF" dem Exchange Server selbst zu installieren. Eine Installation auf einem Desktop ist nicht ausreichend. Zudem muss es sich dabei um einen Exchange 2000 SP2 bzw. höher oder Exchange 2003 SP1 bzw. höher handeln. Die spätere Auswertung muss aber nicht auf dem Server selbst erfolgen. Dazu später mehr:

Download

Bitte nutzen Sie die Version, die für ihre Exchange Version passt.

Microsoft Exchange Server User Monitor (V15) (Exchange 2013/2016 auf Windows 2008R2 bis Win2012)
https://www.microsoft.com/en-us/download/details.aspx?id=51101 

Microsoft Exchange Server User Monitor (V14)
http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=11461 
http://www.microsoft.com/downloads/details.aspx?FamilyId=9A49C22E-E0C7-4B7C-ACEF-729D48AF7BC9&displaylang=en 
Für Exchange Server 2000, 2003, 2007 und 2010 auf Windows 2000-2008

  • 2860005 You cannot install the Exchange user monitor too
    Eventuell stört die Installation von JetStress die nachträgliche Installation von EXMON

Installation

Die folgenden Bilder beruhen noch auf der Version für Exchange 2010 und älter. Microsoft hat mit der Version für Exchange 2013/2016 auch ein PDF bereit gestellt, welches den Einsatz sehr gut beschreibt.

Die Installation ist ebenso schnell passiert. Zuerst der obligatorische Willkommensschirm und die Lizenzvereinbarung

Dann der Zielpfad:

Die Dateien werden kopiert.

Und das war es auch schon:

In aller Eile scheinen die Entwickler der Setup Routine von Microsoft aber wohl vergessen zu haben, ein Icon in das Startmenü aufzunehmen. Auf der Festplatte befinden sich nur die Dateien:

Nach der Installation müssen Sie einmalig die REG-Datei auf dem Exchange Server importieren. Erst dann zeichnet Exchange die entsprechenden Counter mit auf. Der Inhalt der REG-Datei ist nicht sonderlich spektakulär:

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

Aufnahme von Daten

Der Start von EXMON ist relativ unspektakulär. Die aufgeräumte Oberfläche startet sofort die Aufnahme der Daten und zeigt ihnen im Minutenabstand die ermittelten Werte. Es ist daher keine richtige "Echtzeitanzeige" sondern die Mittelwerte über die eingestellte Zeit. Wann immer Sie auf den "Reload"-Button drücken, zeigt EXMON die bis dahin gesammelten Werte an und startet neu.

im Bild sieht man unter anderem, dass der Benutzer "Carius, Frank" wenig aktiv ist. Allerdings taucht bei mir als IP-Adresse der Name des Servers selbst auf und eine sehr alte Versionsnummer. Dies ist darauf zurück zu führen, dass ich per RPC over HTTP arbeite und ich ihnen in der Einleitung schon gesagt habe, dass EXMON nur echten MAPI-Verkehr korrekt aufzeichnen kann. Dies ist aber z.B.: bei den anderen Einträgen zu erkennen. Die Werte in den Rechten Spalten sind aktuell 0, weil die REG-Datei nicht importiert wurde und daher Exchange diese Daten gar nicht aufgezeichnet hat.

Wenn Sie links auf das "PLAY"-Symbol (hier schon aktiv) drücken, dann zeichnet EXMON die aktuellen Daten auch mit auf. Sie sollten aber auf ihre Festplattenkapazität achten, da schon auf meinen kleinen Server damit jede Minute ein "Schnappschuss" der gesammelten Informationen als "ETL-Datei" mit über 700KByte auf dem Server gelandet ist.

Sie sollten daher überlegen, wie sie EXMON effektiv einsetzen. Als dauernd aktiver Prozess macht EXMON weniger Sinn. EXMON kann aber z.B.  über PERFMON bei bestimmten Situationen gestartet werden. Wenn z.B.: PERFMON erkennt, dass die CPU-Belastung sehr hoch ist, dann kann PERFMON das Programm EXMON per Kommandozeile starten und die Daten detailliert aufnehmen lassen. (Siehe Dokumentation von Microsoft im Programmverzeichnis von EXMON)

Auswertung

Wenn Sie die Daten nicht direkt auf dem Server auswerten, kann die Auswertung einem anderen System erfolgen. Hierzu sind aber Abhängigkeiten zu beachten:

Aufzeichnung auf Auswertung auf

Windows 2003 Server

Windows 2003 Server

Windows 2000 Server

Windows 2003 Server
Windows 2000 Server,

Windows 2000 Workstation
Windows XP Workstation

Die einzelnen Wert und ihre Bedeutung sind in der Dokumentation zu EXMON sehr gut beschrieben. Gerade am Beispiel der CPU-Belastung kann so ermittelt werden, welcher Clientprozess gerade Exchange besonders stark belastet. So kann z.B. ein Prozess oder Anwender ausfindig gemacht werden, der sehr viel Daten überträgt (z.B. Erstreplikation) oder ein Prozess, der viele Elemente bearbeitet, z.B.: ein Export /Import von Kontakten oder ein Single Mailbox Backup.

Weitere Links