So geht’s: Fehlermeldungen per E-Mail weiterleiten

Wie automatisiert man nun den Versand von Fehlermeldungen? Genau hier kommt das Ereignis EventLog.EntryWritten ins Spiel. Mithilfe dieses Ereignisses lassen sich bestimmte Aktionen auslösen, die sich am Ereignistyp und anderen Variablen orientieren.

Das EntryWritten-Ereignis soll hier dem Versenden einer E-Mail dienen. Sie wird gesendet, wenn Fehlermeldungen im Ereignisprotokoll auftauchen. Das erfordert zunächst die Auswahl des EntryWritten-Ereignisses:


log.EntryWritten += new EntryWrittenEventHandler(log_EntryWritten);

Damit wäre das Ereignis ausgewählt. Die Auslösung des Mail-Versands erfolgt jedoch nur, wenn EnableRaisingEvents im EventLog-Objekt auf „true“ gesetzt ist:


log.EnableRaisingEvents = true;

Da jetzt das Ereignis ausgewählt und aktiviert ist, folgt nun das Schreiben des Event-Handlers. An dieser Stelle wird der Eintrag untersucht, um festzustellen, ob es sich dabei tatsächlich um eine Fehlermeldung handelt, und dann zu entscheiden, wie damit zu verfahren ist.

Der obige Code untersucht die Eigenschaft EventLogEntry.EntryType. Falls der Eintragstyp Error lautet, wird eine E-Mail mithilfe der im Namensraum System.Mail enthaltenen Klassen MailMessage und SmtpClient gesendet. Ganz offensichtlich handelt es sich dabei um einen sehr klar strukturierten Code, der auf einfacher .NET-Framework-Funktionalität beruht.

Das Ereignis EntryWritten lässt sich freilich auch für andere Aufgaben verwenden. Zum Beispiel können alle Einträge in das Ereignisprotokoll abgefangen und in einer Nachrichtenschleife zur Helpdesk-Verarbeitung gesendet werden. Es besteht sogar die Möglichkeit, Ereignisse aus mehreren Ereignisprotokollen zu sammeln, die Priorität der Einträge zu bestimmen, und dann die Einträge nach Priorität an andere Ereignisprotokolle weiterzuleiten. Das wäre dann im Endeffekt ein Ereignisprotokoll-Router.

Wichtige Hinweise zu Ereignisprotokollen

Sicherheit: Unterschiedliche Protokolle können unterschiedliche Sicherheitsstufen besitzen. Beim Ausführen eines solchen Codes über einen Windows-Service muss sichergestellt sein, dass der Benutzer, unter dem der Service läuft, auch Zugang zu dem überwachten Ereignisprotokoll hat.

Duplizierte Fehlermeldungen: Es kann vorkommen, dass dieselbe Anwendung immer wieder die gleiche Fehlermeldung an das Ereignisprotokoll ausgibt. Bei Verwendung des Codes in einer Produktionsumgebung, sollte dafür gesorgt werden, dass keine unkontrollierten Warnmeldungen die verwendeten E-Mail-Adressen überfluten. Das lässt sich erreichen, indem Warnmeldungen nur dann abgehen, wenn die angegebene Quelle (EventLogEntry.Source) über einen bestimmten Zeitraum keinen Fehler ausgegeben hat.

Page: 1 2

ZDNet.de Redaktion

Recent Posts

Lags beim Online-Gaming? DSL-Vergleich und andere Tipps schaffen Abhilfe

Beim Online-Gaming kommt es nicht nur auf das eigene Können an. Auch die technischen Voraussetzungen…

2 Tagen ago

GenKI-Fortbildung immer noch Mangelware

Fast jedes zweite Unternehmen bietet keinerlei Schulungen an. In den übrigen Betrieben profitieren oft nur…

2 Tagen ago

Netzwerk-Portfolio für das KI-Zeitalter

Huawei stellt auf der Connect Europe 2024 in Paris mit Xinghe Intelligent Network eine erweiterte…

2 Tagen ago

Internet-Tempo in Deutschland: Viel Luft nach oben

Höchste Zeit für eine schnelle Kupfer-Glas-Migration. Bis 2030 soll in Deutschland Glasfaser flächendeckend ausgerollt sein.

2 Tagen ago

Erste Entwickler-Preview von Android 16 verfügbar

Schon im April 2025 soll Android 16 den Status Plattformstabilität erreichen. Entwicklern gibt Google danach…

2 Tagen ago

Kaspersky warnt vor Cyberangriff auf PyPI-Lieferkette

Die Hintermänner setzen KI-Chatbot-Tools als Köder ein. Opfer fangen sich den Infostealer JarkaStealer ein.

2 Tagen ago