Zeitplan-Trigger

Starten Sie einen Prozess regelmäßig oder zu einer bestimmten Zeit.

Ossi Galkin avatarGeschrieben vonOssi Galkin Vor über einer Woche aktualisiertTable of contents

Wenn Sie einen Prozess innerhalb eines bestimmten Zeitplans starten müssen, können Sie mit einem Zeitplanauslöser einen Zeitplan definieren, der den Prozess dann innerhalb der geplanten Zeiten startet. Zeitpläne können so konfiguriert werden, dass sie in bestimmten Intervallen innerhalb festgelegter Zeit- und Datumsbereiche starten oder einmalig zu bestimmten Daten und Zeiten ausgeführt werden.

Bitte beachten Sie, dass Prozesse nur mit Best-Effort-Garantien geplant werden: Der Prozess wird gestartet, wenn der Zeitplan geöffnet ist, wenn die Planungsdatenbank abgefragt wird. Da die Abfrageverzögerung standardmäßig eine Sekunde beträgt, kann dies bedeuten, dass die tatsächliche Ausführung eines Prozesses 1-2 Sekunden später als die tatsächlich geplante Zeit beginnt. Daher sollten Sie keine zu kurzen Zeitfenster erstellen oder erwarten, dass die Prozesse genau zur angegebenen Zeit starten.

Sobald ein Prozess gestartet wurde, kann er gestartet und ausgeführt werden. Das bedeutet, dass die Ausführung der Prozessinstanz lange dauern kann, wenn Sie einen Prozess mit einer großen Anzahl von Aufgaben starten, und auch nach Ablauf des Zeitfensters fortgesetzt werden kann. Wenn dies ein Problem darstellen kann, sollten die Prozessausführungen zeitlich gleichmäßiger geplant werden.

Wenn ein geplanter Prozess erstellt, importiert oder aktiviert wird, wird er ausgeführt, wenn das Zeitfenster das nächste Mal geöffnet wird.

Erweiterte Einstellungen

Jeder Prozess kann mehrere Zeitplanauslöser enthalten, wenn Sie unterschiedliche oder sich überschneidende Zeitpläne benötigen. Um mehrere Zeitplanauslöser hinzuzufügen, fügen Sie einfach ein Startelement zur Prozess-Leinwand hinzu und verbinden Sie es mit dem ersten Schritt des Prozesses. Beachten Sie jedoch, dass jeder Zeitplan separat ausgewertet wird, sodass möglicherweise mehrere Ausführungen eines Prozesses gleichzeitig ausgelöst werden.

Sie können einen Prozess so einschränken, dass nur eine geplante Instanz gleichzeitig ausgeführt wird, indem Sie dieFühren Sie jeweils nur eine geplante Instanz ausOption für den Trigger. Wenn beispielsweise ein Prozess alle 10 Minuten ausgeführt werden soll, die Ausführung der Prozessinstanz jedoch 13 Minuten dauert, wird eine neue Prozessinstanz erst nach Abschluss der vorherigen Prozessinstanz geplant, d. h. etwa 14 Minuten nach dem Start der vorherigen Instanz.

Beachten Sie jedoch, dass wenn Sie einen Prozess manuell starten, z.B. mit der Aktion "Einmal ausführen", die neue Instanz ausgeführt wird, auch wenn dieFühren Sie jeweils nur eine geplante Instanz ausEinstellung wurde aktiviert und eine vorherige Instanz wurde bereits ausgeführt. Dies liegt daran, dass die Einstellung nur für geplante Prozessinstanzen überprüft wird.

Sie können einen Zeitplan auch so einstellen, dass er nur an bestimmten Wochen- oder Monatstagen geöffnet ist. Bei monatlichen Zeitplänen können Sie auch festlegen, dass er z. B. am ersten oder letzten Tag (oder Wochentag oder z. B. Montag) eines Monats geöffnet ist, basierend auf der Tagesrangfolge (Beachten Sie, dass, wenn Sie mehrere Tage auswählen, alle gezählt werden und die Optionen für Wochentage/Wochenendtage alle bestimmten Tage überschreiben). Wenn Sie die Option für explizite Tage verwenden, um einen Prozess z. B. am 30. eines jeden Monats auszuführen, ist die Tagesprüfung exakt, sodass der Zeitplan im Februar ohne 30. nicht tatsächlich geöffnet ist.

Für komplexere Szenarien können Sie auch bestimmte Daten (z. B. Feiertage) angeben, an denen der Zeitplan ausgeführt werden soll oder nicht. Fügen Sie dazu einfach die Daten zumAusgewählte Datenund wählen Sie, ob der Zeitplan "Nur an diesen Tagen" oder "Nie an diesen Tagen" geöffnet sein soll. Sie können die Daten auch aus einem.icsDatei. Bitte beachten Sie, dass die ausgeschlossenen Daten getrennt von den anderen Datumsgrenzen und nach der Überprüfung aller Saisongrenzen ausgewertet werden. Das bedeutet, dass, wenn Sie beispielsweise einen Zeitplan haben, der am Ersten eines jeden Monats ausgeführt wird, aber Feiertage ausschließt, der Prozess im Januar überhaupt nicht ausgeführt wird, da der 1. Januar ein Feiertag wäre. Wenn Sie außerdem eine Saisonendzeit definiert haben, z. B. 31.12.2017, wird der Prozess danach nicht ausgeführt, selbst wenn Sie explizit ein Datum nach dem Saisonende gewählt hätten, z. B. 06.01.2018.

Auswirkungen der Sommerzeit

Die Prozesspläne werden entsprechend der angegebenen Zeitzone überprüft, wobei auch mögliche Anpassungen der Sommerzeit (DST) berücksichtigt werden. Das bedeutet, dass, wenn Sie einen Prozess so planen, dass er jeden Tag um 12:00 Uhr ausgeführt wird, er zu dieser Zeit ausgeführt wird, unabhängig davon, ob die Sommerzeit in Kraft ist oder nicht.

Da der Zeitplaner jedoch die angepasste Zeit verwendet, können die Zeiträume, in denen die Sommerzeit beginnt oder endet, dazu führen, dass Prozesse etwas anders als normal geplant werden: Im Frühjahr, wenn die Sommerzeit beginnt, werden die Uhren vorgestellt und eine Stunde übersprungen. Das Gegenteil passiert im Herbst, wenn die Uhren zurückgestellt werden und es eine zusätzliche Stunde gibt. Die Auswirkungen dieser Anpassungen für verschiedene Zeitpläne werden in den folgenden Tabellen angezeigt.

Wenn die Sommerzeit beginnt, wird eine Stunde (in der EU die Stunde von 3 bis 4 Uhr) übersprungen, d. h. die Uhr springt von 2:59:59 auf 4:00:00. Für Prozesse bedeutet dies, dass die Zeitpläne während dieser Zeit nicht geöffnet sein können. Die Start- und Endzeiten der Zeitpläne werden wie folgt angepasst:

  • 2:30 - 3:30 --> 2:30 - 2:59:59 - Wenn die Endzeit ungültig ist, wird die nächste gültige Zeit (direkt vor 3:00:00) verwendet

  • 3:30 - 5:00 --> 4:00 - 5:00 - Wenn die Startzeit ungültig ist, wird die nächste gültige Zeit (4:00) verwendet

  • 3:30 - 3:45 --> (keine) - Der Zeitplan wird übersprungen, da er nicht auf eine gültige Zeit eingestellt werden kann. Diese Art von Zeitplänen sollten Sie nicht verwenden.

  • 3:30 - keine Endzeit --> 3:30 - 2:59:59 und 4:00 - 3:30 - Zeitplan ohne Endzeit ist implizit 24 Stunden geöffnet. Wenn die Startzeit ungültig ist, werden die Start- und Endzeiten so angepasst, dass sie gültig sind, und die Ausführung wird während der Sommerzeitumstellung ohne Unterbrechung fortgesetzt.

Wenn die Sommerzeit endet, wird dem Tag eine Stunde hinzugefügt, d. h. die Uhr wird von 4:00 auf 3:00 zurückgestellt. Daher ist die Ortszeit an diesem Tag zweimal 3:00. Für Prozesse, die zu dieser mehrdeutigen Stunde starten oder enden, wird die Mehrdeutigkeit dadurch gelöst, dass immer das erste mögliche Vorkommen gewählt wird.

Sommerzeitänderungen wirken sich auch auf wiederkehrende Zeitpläne aus. Da die Wiederholungen von der lokalen Startzeit des Zeitplans aus berechnet werden, werden die Wiederholungen der angepassten lokalen Zeit entsprechen, sobald ein neuer Zeitplan geöffnet wird.

Wenn die Start- oder Endzeit des Zeitplans aufgrund der Sommerzeitumstellung angepasst wird, wird bei jeder Überprüfung des Zeitplans, also jede Minute, eine Warnung in das Ereignisprotokoll eingetragen. Wenn der Zeitplan übersprungen wird, d. h. wenn der Zeitplan während des ungültigen Zeitraums (3:00-3:59:59) startet und endet, wird ein Fehler protokolliert.


Verwandte ArtikelÜberwachen und Anzeigen von ProzessausführungenBedingter AuslöserRabbitMQ-AuslöserEinführung in Schedule TriggerEinführung in bedingte Trigger