RB: Shutdown über EventLog-Check prüfen

Ein Herunterfahren eines Geräts kann bisher nicht im Dashboard als Check nachvollzogen werden. Deshalb soll diese kleine Anleitung (als Beispiel) helfen, sowas auch für andere Prüfungen ableitbar machen. Skripte und die damit verbundenen Jobs sind sehr flexible Werkzeuge, um das umzusetzen. Ein Einsatzgebiet könnte das kontrollierte Herunterfahren von zugewiesenen Geräten sein, die nach einem Windows-Update (Neustart optional) nicht unbedingt immer neu starten.

Schritt 1:  Job erstellen #

Um einen definierten Wortlaut im Windows EventLog für den EventLog-Check nutzen zu können, muss dieser erst durch die Ausführung eines Jobs erzeugt werden.

Abb. 1: Job für Shutdown

Die einzelnen Bestandteile des Kommandos sind:

  • shutdown

Das Kommando, um Windows herunterzufahren.

  • /s

Fährt den Computer herunter.

  • /t 300

Legt eine Zeitüberschreitungsperiode vor dem Herunterfahren fest. Der Wert ist in Sekunden angegeben.

In diesem Fall wartet Windows 5 Minuten.

  • /d p:4:1

Mit diesem Parameter wird eine Ursache definiert, der für das Herunterfahren ins Eventlog geschrieben wird.

Hier wird ein Herunterfahren mit dem Grund ‘Anwendung: Wartung (geplant)’ definiert.

  • /c “Shutdown Wartung (geplant)”

Hiermit wird ein Kommentar angegeben, der verwendet wird, um den vor dem Herunterfahren per Messagebox zu informieren.

Schritt 2: EventLog-Check #

Windows protokolliert zwar, dass ein Shutdown geplant wurde, nicht aber, dass dieser erfolgreich durchgeführt wurde. Mit dem folgenden Kommando kann der Eintrag der Planung für das Shutdown-Event ermittelt werden (nur der Vollständigkeit halber)

Get-EventLog -LogName System -Message ‘*Anwendung: Wartung (geplant)*’

Ergebnis:

(Wie angegeben kann jetzt nach dem Wortlaut gesucht werden, der als Grund für das Shutdown-Event definiert wurde)

<snip>

16481 Dez 30 08:55 Information User32 2147484722 Vom Prozess “C:\WINDOWS\system32\shutdown.exe (HOSTNAME)” wurde auf Anforderung des Benutzers “DOMAIN\<Username>” das Ereignis “Herunterfahren” für den Computer “HOSTNAME” aus folgendem Grund initiiert: “Anwendung: Wartung (geplant)”

<snip>

Bestätigung für das Shutdown-Event #

Für den Check wird aber die Bestätigung der erfolgreichen Durchführung des Shutdown-Events benötigt. Bei einem Shutdown-Event wird der ‘Ereignisprotokolldienst’ gestoppt und beim Hochfahren wieder gestartet. Das kann als Bestätigung interpretiert werden.

Get-EventLog -LogName System -Source EventLog -Message ‘*Ereignisprotokolldienst*’ -New 1

Ergebnis:

<snip>

16492 Dez 30 09:01 Information EventLog 2147489653 Der Ereignisprotokolldienst wurde gestartet.

<snip>

Konfiguration #

Der Check wird so konfiguriert, dass hier nach einer Nachricht im EventLog gesucht wird, ohne die EventID zu berücksichtigen.

Abb. 2: Konfiguration des Shutdown-Check

Hinweis: Bei Log Name steht hier ‘System’, weil der Shutdown von Windows dort protokolliert wird. Es gibt aber Software, wie z.B. Veeam, die ein eigenes Protokoll schreiben. In so einem Fall kann dort einfach der Dateiname eingetragen werden, wie er in der Ereignisanzeige steht.

High Quality Theme

There is a fine line between creating greatness and accomplishing awesomeness. This time, we worked to prove that sky is not the limit.

Fill out the form to subscribe to our newsletter.

[contact-form-7 404 "Nicht gefunden"]

High Quality Theme

There is a fine line between creating greatness and accomplishing awesomeness. This time, we worked to prove that sky is not the limit.

Fill out the form to subscribe to our newsletter.

[contact-form-7 404 "Nicht gefunden"]