Wie man TaskScheduler zum Scheitern bringt, wenn das Ergebnis der Aufgabe von 0 abweicht


16

Ich habe eine Backup-Aufgabe, die mit einem Nicht-Null-Ergebnis ausfällt, noch Taskplaner sagt, dass es die Aufgabe korrekt ausgeführt.

Gibt es eine Möglichkeit, dem Taskplaner mitzuteilen, dass die Aufgabe fehlgeschlagen ist?


Hallo Pablo, Wir werden weitere Informationen benötigen. Wie , wie / was ist der Taskplaner Start? Eine Batch - Datei, eine EXE, etwas anderes? Ist das Windows Backup , dass Sie es zu tun haben? Was hast du versucht?
Ƭᴇcʜιᴇ007

1
Ich verwende das Programm wbadmin, um die Sicherung zu starten, aber ich habe das gleiche Problem mit einer Batch-Datei mit einer einzelnen Exit-1-Anweisung. Der Taskscheduler enthält den Fehlercode, sondern meldet die Aufgabe als erfolgreich ausgeführt wurde .
Pablo Montilla

So ist der Taskplaner selbst zeigt den Nicht-Null - Exit - Code?
Ƭᴇcʜιᴇ007

3
Ja, aber meldet die Aufgabe als successfuly ausgeführt. Ich verstehe, dass es vielleicht meldet, dass es die Aufgabe ausführen könnte, nicht, dass die Aufgabe selbst fehlgeschlagen ist, aber nicht sehr nützlich zu sein scheint.
Pablo Montilla

Antworten:


4

Wenn der Taskplaner die Task erfolgreich startet und das gestartete Programm beendet wird, war es aus Sicht des Taskplaners ein Erfolg (dh es ist nichts Schlimmes passiert, als ein fehlgeschlagener Benutzerausweis, der das Programm startet).

Wenn Sie normalerweise überwachen möchten, ob während eines Programmlaufs etwas Schlimmes passiert, müssen Sie entweder eine Warnung senden (z. B. per E-Mail oder durch Protokollierung in einer Datei, die Sie später überprüfen) oder ein anderes Programm einrichten etwas über den Programmablauf überwachen, ob ein Fehler aufgetreten hinweisen könnte.

Welche Art von Meldung eines Fehlers versuchen Sie zu bekommen? Machst du eine manuelle Überprüfung aber nur versucht, den Fehler zu haben, stärker spürbar sein? Oder haben Sie ein anderes Programm auf Fehler überwacht?


2
Dennoch denke ich, dass es falsch ist, einen Fehler der ausgeführten Aufgabe zu melden und nicht zu melden (oder zumindest eine Option zu geben, um ihn zu melden). Vielen Dank!
Pablo Montilla

1
Ich bin damit einverstanden , es wäre nützlich , wenn der Taskplaner kann den Exit - Code erkennen und eine E - Mail basierend auf dem Ergebnis senden. Aber ich glaube nicht , dass diese Funktion hat. Versuchen Sie , eine E - Mail - Benachrichtigung zu erhalten? Vielleicht Einwickeln der Einführung von wbadmin in einem VBScript oder Powershell - Skript, das den Exit - Code und etwas tun , damit für Sie wäre eine Möglichkeit erkennen würde?
Shannon Wagner

1
Yup, das ist eine Möglichkeit. Es ist auch Arbeit ...;) Hoffentlich wird MS denken, dass dies etwas Nützliches ist, um Windows 8 hinzuzufügen.
Pablo Montilla

6
Dies ist Geist weht mir - Taskplaner diese Optionen alle für die Konfiguration Neustart einer Aktion im Fall hat , dass es nicht ", aber nicht überprüft , auch wenn eine Aktion gibt einen Fehlercode. Ich frage mich, was um alles in der Welt eigentlich ein "Fehler" für den Taskplaner ist.
mackenir

Angesichts dieser Antwort muss ich fragen: Löst der Taskplaner überhaupt einen erneuten Versuch basierend auf dem Beendigungscode aus?
jpmc26

5

Es ist möglich, die Task "neu zu starten", wenn sie fehlschlägt.

  1. Verwenden Sie folgenden Code im Stapelskript, um ein Systemfehlerereignis zu erstellen:

    eventcreate / ID 100 / SO "Ihr Skriptname" / L APPLICATION / T ERROR / D "Ihr Fehlergrund"

  2. Erstellen Sie eine neue Aufgabe mit einem Auslöser, der die Systemereignisse überwacht und nach der Kategorie und ID filtert, die Sie gerade im Stapel hinzugefügt haben. Die Aktion dieser Aufgabe ist wieder die Charge. Diese Aufgabe sollte um eine Minute verzögert werden, damit nicht zweimal die gleiche Charge gestartet wird!

Achten Sie darauf, keine Endlosschleife zu erstellen.

Ich hoffe, das hilft!


Ich mag diesen Ansatz :)
DavidPostill
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.