Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Zeitplantypen im EventBridge Scheduler
Im folgenden Thema werden die verschiedenen Zeitplantypen beschrieben, die Amazon EventBridge Scheduler unterstützt, sowie die Art und Weise, wie EventBridge Scheduler mit der Sommerzeit umgeht und die Planung in verschiedenen Zeitzonen durchführt. Bei der Konfiguration Ihres Zeitplans können Sie zwischen drei Zeitplantypen wählen: tarifbasierte, cron-basierte und einmalige Zeitpläne.
Sowohl ratenbasierte als auch cron-basierte Zeitpläne sind wiederkehrende Zeitpläne. Sie konfigurieren jeden Typ eines wiederkehrenden Zeitplans mithilfe eines Zeitplanausdrucks für den Typ des Zeitplans, den Sie konfigurieren möchten, und geben eine Zeitzone an, in der EventBridge Scheduler den Ausdruck auswertet.
Ein einmaliger Zeitplan ist ein Zeitplan, der ein Ziel nur einmal aufruft. Sie konfigurieren einen einmaligen Zeitplan, wenn Sie die Uhrzeit, das Datum und die Zeitzone angeben, in der der EventBridge Scheduler den Zeitplan auswertet.
Anmerkung
Alle Zeitplantypen im EventBridge Scheduler rufen ihre Ziele mit einer Genauigkeit von 60 Sekunden auf. Das heißt, wenn Sie Ihren Zeitplan so einrichten, dass er am läuft1:00
, wird das Ziel API zwischen 1:00:00
und aufgerufen1:00:59
, vorausgesetzt, dass kein flexibles Zeitfenster festgelegt ist.
In den folgenden Abschnitten erfahren Sie, wie Sie Zeitplanausdrücke für jeden wiederkehrenden Zeitplantyp konfigurieren und wie Sie einen einmaligen Zeitplan im EventBridge Scheduler einrichten.
Themen
Ratenbasierte Zeitpläne
Ein ratenbasierter Zeitplan beginnt nach dem Startdatum, das Sie für Ihren Zeitplan angegeben haben, und läuft mit einem von Ihnen definierten regulären Tarif bis zum Enddatum des Zeitplans. Mithilfe eines ratenbasierten Zeitplans können Sie die gängigsten Anwendungsfälle für die wiederkehrende Terminplanung einrichten. Wenn Sie beispielsweise einen Zeitplan verwenden möchten, bei dem das Ziel alle 15 Minuten, alle zwei Stunden oder alle fünf Tage aufgerufen wird, können Sie einen ratenbasierten Zeitplan verwenden, um dies zu erreichen. Sie konfigurieren einen ratenbasierten Zeitplan mithilfe eines Preisausdrucks.
Bei tarifbasierten Zeitplänen verwenden Sie die StartDate
Eigenschaft, um das erste Vorkommen des Zeitplans festzulegen. Wenn Sie StartDate
für einen ratenbasierten Zeitplan keinen Plan angeben, ruft Ihr Zeitplan sofort das Ziel auf.
Preisausdrücke enthalten zwei Pflichtfelder, die durch ein Leerzeichen getrennt sind, wie im Folgenden dargestellt.
Syntax
rate(
value
unit
)
- Wert
-
Eine positive Zahl.
- Einheit
-
Die Zeiteinheit, in der Ihr Zeitplan das Ziel aufrufen soll.
Gültige Eingaben:
minutes
| |hours
days
Beispiele
Das folgende Beispiel zeigt, wie Preisausdrücke mit dem AWS CLI create-schedule
Befehl verwendet werden, um einen ratenbasierten Zeitplan zu konfigurieren. In diesem Beispiel wird ein Zeitplan erstellt, der alle fünf Minuten ausgeführt wird und eine Nachricht unter Verwendung des vordefinierten SqsParameters
Zieltyps an eine SQS Amazon-Warteschlange übermittelt.
Da in diesem Beispiel kein Wert für den --start-date
Parameter festgelegt ist, ruft der Zeitplan sein Ziel sofort auf, nachdem Sie ihn erstellt und aktiviert haben.
$
aws scheduler create-schedule --schedule-expression 'rate(5 minutes)' --name
schedule-name
\ --target '{"RoleArn": "role-arn
", "Arn": "QUEUE_ARN
", "Input": "TEST_PAYLOAD
" }' \ --flexible-time-window '{ "Mode": "OFF"}'
Cron-basierte Zeitpläne
Ein Cron-Ausdruck erstellt einen detaillierten wiederkehrenden Zeitplan, der zu einem bestimmten Zeitpunkt Ihrer Wahl ausgeführt wird. EventBridge Scheduler unterstützt die Konfiguration von cron-basierten Zeitplänen in koordinierter Weltzeit (UTC) oder in der Zeitzone, die Sie bei der Erstellung Ihres Zeitplans angeben. Mit cron-basierten Zeitplänen haben Sie mehr Kontrolle darüber, wann und wie oft Ihr Zeitplan ausgeführt wird. Verwenden Sie cron-basierte Zeitpläne, wenn Sie einen benutzerdefinierten Wiederholungsplan benötigen, der von keinem der Tarifausdrücke von Scheduler unterstützt wird. EventBridge Sie können beispielsweise einen cron-basierten Zeitplan erstellen, der um 8:00 Uhr ausgeführt wird. PSTjeden ersten Montag im Monat. Sie konfigurieren einen Cron-basierten Zeitplan mithilfe eines Cron-Ausdrucks.
Ein Cron-Ausdruck besteht aus fünf Pflichtfeldern, die durch Leerzeichen getrennt sind: Minuten, Stunden day-of-month, day-of-week Monat und einem optionalen Feld, Jahr, wie im Folgenden dargestellt.
Syntax
cron(
minutes
hours
day-of-month
month
day-of-week
year
)
Feld | Werte | Platzhalter |
---|---|---|
Minuten |
0-59 |
, - * / |
Stunden |
0-23 |
, - * / |
D ay-of-month |
1-31 |
, - * ? / L W |
Monat |
1-12 oder JAN - DEC |
, - * / |
D ay-of-week |
1-7 oder SUN - SAT |
, - * ? / L # |
Jahr |
1970-2199 |
, - * / |
Platzhalter
-
Das Platzhalterzeichen , (Komma) schließt zusätzliche Werte ein. Im Feld Monat MAR umfasstJAN,FEB, Januar, Februar und März.
-
Das Platzhalterzeichen - (Bindestrich) gibt einen Bereich an. Im Feld Tag steht 1-15 für die Tage 1 bis 15 des angegebenen Monats.
-
Das Platzhalterzeichen * (Sternchen) steht für alle Werte im Feld. Im Feld für die Stundenangaben steht * für alle Stunden. Sie können * nicht sowohl in den ay-of-week Feldern D als ay-of-month auch in D verwenden. Wenn Sie es in einem der Felder eingeben, müssen Sie im anderen Feld ein ? verwenden.
-
Das Platzhalterzeichen / (Schrägstrich) steht für schrittweise Steigerungen. Im Feld "Minuten" können Sie 1/10 eingeben, um einen Bereich von je 10 Minuten beginnend mit der ersten Minute der Stunde anzugeben (z. B. die 11., 21. und 31. Minute usw.).
-
Das Platzhalterzeichen ? (Fragezeichen) steht für einen beliebigen Wert. In das ay-of-month D-Feld könnten Sie 7 eingeben und wenn ein beliebiger Wochentag zulässig ist, könnten Sie eingeben? im ay-of-week D-Feld.
-
Der Platzhalter L in den ay-of-week Feldern D ay-of-month oder D gibt den letzten Tag des Monats oder der Woche an.
-
Der
W
Platzhalter im ay-of-month D-Feld gibt einen Wochentag an.3W
Gibt im ay-of-month Feld D den Wochentag an, der dem dritten Tag des Monats am nächsten liegt. -
Der Platzhalter # im ay-of-week Feld D gibt eine bestimmte Instanz des angegebenen Wochentags innerhalb eines Monats an. Beispiel: 3#2 steht für den zweiten Dienstag des Monats: Die 3 bezieht sich auf Dienstag, da dies der dritte Tag jeder Woche ist, und die 2 bezieht sich auf den zweiten Tag dieses Typs innerhalb des Monats.
Anmerkung
Wenn Sie das Zeichen '#' verwenden, können Sie nur einen Ausdruck in dem day-of-week Feld definieren. Beispiel,
"3#1,6#3"
ist ungültig, da es als zwei Ausdrücke interpretiert wird.
Beispiele
Das folgende Beispiel zeigt, wie Cron-Ausdrücke mit dem AWS CLI create-schedule
Befehl verwendet werden, um einen Cron-basierten Zeitplan zu konfigurieren. In diesem Beispiel wird ein Zeitplan erstellt, der in den Jahren 2022 bis 2023 am letzten Freitag eines jeden Monats um 10:15 Uhr UTC +0 läuft und eine Nachricht unter Verwendung des vordefinierten Zieltyps an eine SQS Amazon-Warteschlange zustellt. SqsParameters
$
aws scheduler create-schedule --schedule-expression "cron(15 10 ? * 6L 2022-2023)" --name
schedule-name
\ --target '{"RoleArn": "role-arn
", "Arn": "QUEUE_ARN
", "Input": "TEST_PAYLOAD
" }' \ --flexible-time-window '{ "Mode": "OFF"}'
Einmalige Zeitpläne
Ein einmaliger Zeitplan ruft ein Ziel nur einmal an dem Datum und der Uhrzeit auf, die Sie unter Verwendung eines gültigen Datums und eines Zeitstempels angeben. EventBridge Scheduler unterstützt die Planung in der koordinierten Weltzeit (UTC) oder in der Zeitzone, die Sie bei der Erstellung Ihres Zeitplans angeben.
Anmerkung
Ein einmaliger Zeitplan wird immer noch auf Ihr Kontingent angerechnet, nachdem er vollständig ausgeführt und sein Ziel aufgerufen hat. Wir empfehlen, deine einmaligen Zeitpläne zu löschen, nachdem sie vollständig ausgeführt wurden.
Sie konfigurieren einen einmaligen Zeitplan mithilfe eines AT-Ausdrucks. Ein at-Ausdruck besteht aus dem Datum und der Uhrzeit, zu der EventBridge Scheduler Ihren Zeitplan aufrufen soll, wie im Folgenden dargestellt.
Syntax
at(
yyyy-mm-ddThh:mm:ss
)
Wenn Sie einen einmaligen Zeitplan konfigurieren, ignoriert EventBridge Scheduler den StartDate
und, den EndDate
Sie für den Zeitplan angeben.
Beispiele
Das folgende Beispiel zeigt, wie AT-Ausdrücke zusammen mit dem AWS CLI create-schedule
Befehl verwendet werden, um einen einmaligen Zeitplan zu konfigurieren. In diesem Beispiel wird ein Zeitplan erstellt, der am 20. November 2022 einmal um 13:00 Uhr bis UTC 08:00 Uhr ausgeführt wird und eine Nachricht unter Verwendung des vordefinierten Zieltyps an eine SQS Amazon-Warteschlange übermittelt. SqsParameters
$
aws scheduler create-schedule --schedule-expression "at(2022-11-20T13:00:00)" --name
schedule-name
\ --target '{"RoleArn": "role-arn
", "Arn": "QUEUE_ARN
", "Input": "TEST_PAYLOAD
" }' \ --schedule-expression-timezone "America/Los_Angeles" --flexible-time-window '{ "Mode": "OFF"}'
Zeitzonen im Scheduler EventBridge
EventBridge Scheduler unterstützt die Konfiguration von cron-basierten und einmaligen Zeitplänen in jeder von Ihnen angegebenen Zeitzone. EventBridge Der Scheduler verwendet die Zeitzonendatenbank
Mit dem AWS CLI können Sie mithilfe des Parameters die Zeitzone festlegen, in der der EventBridge Scheduler Ihren Zeitplan auswerten soll. --schedule-expression-timezone
Mit dem folgenden Befehl wird beispielsweise ein cron-basierter Zeitplan erstellt, der täglich um 8:30 Uhr ein vordefiniertes SQS SendMessage
Amazon-Ziel in America/New_York aufruft.
$
aws scheduler create-schedule --schedule-expression "cron(30 8 * * ? *)" --name schedule-in-est \ --target '{"RoleArn": "
role-arn
", "Arn": "QUEUE_ARN
", "Input": "This schedule runs in the America/New_York time zone." }' \ --schedule-expression-timezone "America/New_York" --flexible-time-window '{ "Mode": "OFF"}'
EventBridge Sommerzeit im Scheduler
EventBridge Der Scheduler passt Ihren Zeitplan automatisch an die Sommerzeit an. Wenn sich die Zeit im Frühling nach vorne verschiebt und ein Cron-Ausdruck auf ein Datum und eine Uhrzeit fällt, die nicht existieren, wird Ihr Zeitplanaufruf übersprungen. Wenn sich die Zeit im Herbst rückwärts verschiebt, läuft Ihr Zeitplan nur einmal und wiederholt seinen Aufruf nicht. Die folgenden Aufrufe erfolgen normalerweise zum angegebenen Datum und zur angegebenen Uhrzeit.
EventBridge Der Scheduler passt Ihren Zeitplan an die Zeitzone an, die Sie bei der Erstellung des Zeitplans angegeben haben. Wenn Sie einen Zeitplan in America/New_York konfigurieren, passt sich Ihr Zeitplan an, wenn sich die Uhrzeit in dieser Zeitzone ändert, während ein Zeitplan in America/Los_Angeles drei Stunden später angepasst wird, wenn sich die Zeit an der Westküste ändert.
Bei tarifbasierten Zeitplänen, die als Einheit verwenden, steht z. days
B. für eine Dauer von 24 Stunden auf der Uhr. rate(1 days)
days
Das heißt, wenn ein Tag aufgrund der Sommerzeit auf 23 Stunden verkürzt oder auf 25 Stunden verlängert wird, wertet EventBridge Scheduler den Preisausdruck auch 24 Stunden nach dem letzten Aufruf des Zeitplans aus.
Anmerkung
In einigen Zeitzonen wird die Sommerzeit gemäß den lokalen Regeln und Vorschriften nicht eingehalten. Wenn Sie einen Zeitplan in einer Zeitzone erstellen, in der die Sommerzeit nicht eingehalten wird, passt der EventBridge Scheduler Ihren Zeitplan nicht an. Anpassungen der Sommerzeit gelten nicht für Zeitpläne mit koordinierter Weltzeit (). UTC
Beispiel
Stellen Sie sich ein Szenario vor, in dem Sie einen Zeitplan mit dem folgenden Cron-Ausdruck in America/Los_Angeles erstellen:. cron(30 2 * * ? *)
Dieser Zeitplan wird jeden Tag um 2:30 Uhr in der angegebenen Zeitzone ausgeführt.
-
Spring-forward — Wenn sich die Zeit im Frühling von 1:59 Uhr auf 3:00 Uhr vorwärts verschiebt, überspringt der EventBridge Scheduler den Aufruf des Zeitplans an diesem Tag und setzt die Ausführung des Zeitplans am nächsten Tag normal fort.
-
Fallback — Wenn sich die Zeit im Herbst von 2:59 Uhr auf 2:00 Uhr rückwärts verschiebt, führt der EventBridge Scheduler den Zeitplan nur einmal um 2:30 Uhr aus, bevor die Schicht stattfindet, wiederholt den Zeitplanaufruf jedoch nicht erneut um 2:30 Uhr nach der Zeitverschiebung.