Überwachung von Exchange - Eventlog

Ein wichtiger Aspekt bei der Überwachung von Exchange ist das Eventlog des Systems. Das Eventlog von Windows ist die zentrale Stelle, in der viele Programme eventuelle Fehler oder Warnungen hinterlassen. Auch Exchange meldet hier fast alle Fehler aber auch Informationen.

Das Eventlog des Servers

Das Windows Eventlog ist der erste Ansatzpunkt um Probleme einzugrenzen. aber zugleich auch eine Möglichkeit die Funktion des Servers zu überprüfen.

Das Eventlog kann mit dem Eventviewer angezeigt werden. Leider hat jeder Server ein eigenes Eventlog, so dass Sie sich überlegen sollten, mit einer Software diese Protokolle zentral zu sammeln und zu überwachen. Zumal solche eine Lösung auch alle anderen Betriebsparameter mit überwacht. Dies wären z.B. freien Speicherplatz (10% Frei Meldung des Serverdienstes) als auch Meldungen vom DNS-Server, NETLOGON und vielen anderen Systemen.

Eventlog Größe einstellen

Allerdings sind die Eventlogs von Windows nur 512 kByte groß. Wenn Sie aber das Diagnoseprotokoll aktivieren, dann kann es schon schnell passieren, dass die Meldungen überschrieben werden. Daher ist es sinnvoll, diesen Speicher zu vergrößern. Am besten geht dies unter Windows 2000 mit einer Gruppenrichtlinie für alle Server. Natürlich kann dies auch manuell eingestellt werden. Ein wert von 4 MByte je Eventlog hat sich oft als ausreichend bewährt. Aber bei den heutigen Festplatten sind auch größere Eventlogs kein Problem mehr.

Eventlog zentralisieren, durchsuchen und überwachen

Speziell beim Einsatz mehrerer Server oder wenn eine bestimmte Verfügbarkeit erwartet wird, sollten Sie sich Wege überlegen, die Meldungen aller Server zentral zu erfassen um entsprechende Abhängigkeiten zu erkennen. Dies machen einige kommerzielle Überwachungsprogramme oder Tools wie NTSyslog. Alternativ können sie mit Skripten (siehe Skript Eventlog überwachen) oder Tools wie "EventCombMT" aus den ALTOOLS von Microsoft alle Server nach bestimmten Meldungen durchsuchen.

Auch von Microsoft selbst gibt es seit Windows 2003 eine ganze Sammlung von Programmen zum Thema Eventlog:

  • EventCreate
    erzeugt einen Eintrag im  Eventlog mit beliebiger Beschreibung, Quelle und ID
  • EventTriggers
    Erlaubt das Einstellen von Programme, die beim Auftreten eines bestimmten Events vom Betriebssystem gestartet werden (WMI). Allerdings sollten Sie zur Überwachung von 10 Events nicht unbedingt auch 10 Event Trigger installieren.
  • EventQuery.VBS
    Sehr leistungsfähiges VBScript um das Eventlog automatisch auf bestimmte Events zu durchsuchen
  • Eventvwr
    Das ist der klassische EventViewer, wie er schon seit NT 3.1 verfügbar ist.

Diagnoseprotokoll und Eventlog

Neben den Standardeinstellungen können Sie auf einem Exchange Server ein Diagnoseprotokoll hoch setzen. Damit protokolliert Exchange 2000 sehr viel mehr Informationen im Eventlog. Dies hilft bei der Fehlersuche aber viel mehr auch bei der Kontrolle und Überwachung der laufenden Funktion.

Eventlog nutzen

Wenn Sie dann eine Überwachung des Eventlog eingerichtet haben, dann sollten Sie wissen, das Sie nicht allein den Anwendungen vertrauen müssen, die ihnen einen Event erzeugen. Ihre eigenen Batchjobs und VBScripts können sich problemlos im Eventlog hinterlassen.

' Eventlog aus VBScript schreiben
set objshell = WScript.CreateObject("WScript.Shell")
objshell.LogEvent 0, "Dies ist eine Eventlog Meldung"

  • Parameter 1 = Typ der Meldung und zugleich Ereigniskennung
    0 = Erfolg
    1 = Fehler
    2 = Warnung
    4 = Information
    8 = Audit_Success
    16 = Audit_Failure"
  • Parameter 2 = Meldung
    Diese Meldung wird in der Beschreibung angezeigt
  • Parameter 3 = Ziel
    Hier kann ein entfernter Computer angegeben werden, z.B.: "\\Servername"

Das Ergebnis im Eventviewer sieht dann so aus:

Es versteht sich von selbst, dass mit der gleichen Technik auch eine ASP-Webseite Events generieren kann. Leider lässt dieses einfache WSH-Objekt es nicht zu, z.B.: eine Kategorie oder eine alternative Quelle anzugeben.

Achtung:
Eine Meldung im Eventlog kann maximal  32kbyte groß sein. Wenn Sie also einen sehr großen Text in die Beschreibung stellen wollen, dann müssen Sie diesen auf mehrere Events aufteilen.

Aber auch aus einfachen BATCH-Dateien lassen sich Meldungen in das Eventlog schreiben. Dazu gibt es von Microsoft ebenfalls ein Programm LogEvent, welches schon

LOGEVENT [-m \\MACHINENAME] [-s SIWEF] [-c CategoryNumber] "Event Text" Severity is one of (S)uccess, (I)nformation, (W)arning, (E)rror or (F)ailure.

Wenn Sie jedoch mit Visual Basic oder einer anderen Anwendung arbeiten, dann können Sie über "app.logEvent" einfach eine Meldung schreiben. Allerdings sollten Sie auch folgenden Artikel können.

  • 161306 INFO: App.LogEvent Only Logs in Compiled Applications
  • 184747 INFO: Event Logging in Visual Basic
  • 301309 How To Log Events from Active Server Pages
  • 131008 How to use Logevent.exe to Log Events From a Batch File

Beispiele zur Überwachung

Hier einige wenige Beispiele zur Erläuterung, dass der Aufwand sinnvoll und gerechtfertigt ist:

  • Datensicherung
    Immer wenn sie Online die Datenbank sichern, wird dies im Eventlog mit Start und Ende protokolliert. Damit ist das Eventlog eine vom Backupprodukt unabhängige Instanz, um die Funktion zu kontrollieren. Übrigens kann man so auch den -1018 Fehler frühzeitig entdecken.
  • Datenbankkonsistenz
    Exchange defragmentiert seine Datenbank. Wenn diese Defragmentierung fehlschlägt, fehlt der entsprechende positive Eintrag im Eventlog. Dies ist ein erstes Anzeichen, dass der Server in Probleme laufen könnte.
  • Connector-Status
    Wird das Diagnoseprotokoll geeignet konfiguriert, so können auch StatusÄnderungen der Connectoren gemeldet werden. Dies ist sonst sehr schwer oder nur mit WINROUTE manuell möglich.
  • PublicFolder Rechte
    Sie migrieren von Exchange 5.5 nach 2000 und stellen fest, dass nur ein Teil der öffentlichen Ordner sichtbar ist ?. Dann suchen Sie einfach nach den Events 9551 und 9552. Diese weisen auf Ordner hin, bei denen die Rechte nicht konvertiert werden können. Siehe auch 9551-Melder)
  • Datenbanküberwachung
    Aber auch wenn Sie Mailboxgrenzen bei Benutzern eingestellt haben, ist es von Vorteil dies rechtzeitig zu wissen, ehe der Benutzer sich beschwert. (Q235895 XADM: How to Monitor Mailbox Storage Limits in Event Viewer).
  • ADC Überwachung
    Gerade bei der Migration und dem Parallelbetrieb von Exchange 5.5 und Exchange 2000 ist die Funktion des Active Directory Connectors sehr wichtig. Das Eventlog ist ein guter Weg hier Fehler frühzeitig zu erkennen.
  • Serverüberwachung
    Natürlich kann auch der komplette Server überwacht werden. Viele Netzwerkkarten melden einen verlorenen Link im Eventlog wie auch korrekt installierte RAID-Controller. So wird der Defekt einer Festplatte, aber auch Speicherfehler (ECC), redundante Netzteile etc. zusätzlich erfasst.

Sie sehen, dass es viele Vorteile bringt, das Eventlog der Server zu überwachen und entsprechende Regeln für Meldungen, Alarme und Möglichkeiten der Auswertung zu schaffen.

Windows 2008 Konsolidierung

Windows 2008 enthält eine eingebaute Funktion, um Eventlogs von anderen Systemen über WinRM zu konsolidieren.

Alternativ können Sie natürlich auch über Syslog solche Meldungen zentralisieren.

Windows 2008 R2 Eventlog

Ganz nett die die Funktion von Windows 2008, mit der Sie direkt aus dem Eventlog Viewer einen Alarm einstellen können.

Der dann gestartet Wizard fragt sie ein paar Daten ab. Zuerst müssen Sie Event einen Namen geben:

Der Eventvwr füllt den entsprechenden Event natürlich schon anhand der Auswahl aus.

  

Dann haben Sie die Wahl, ob sie ein beliebiges Programm starten möchten oder eine Mail versendet werden soll

 

Am Ende sehen Sie eine Zusammenfassung

Im Hintergrund wird einfach ein Eintrag im Taskplaner angelegt. Damit ist es eine einfache und schnelle Möglichkeit auf einen bestimmten Event zu reagieren, aber kein Ersatz für ein echtes Event Management

Weitere Links

Programme zur Überwachung des EventLogs

Diese Liste stellt nur eine willkürliche Auswahl und keine Empfehlung dar.