Zeitplantypen im EventBridge Scheduler - EventBridge Scheduler

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 die Ziel-API zwischen und aufgerufen. 1:00:00 1:00:59

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.

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 StartDateEigenschaft, um das erste Vorkommen des Zeitplans festzulegen. Wenn Sie StartDate für einen ratenbasierten Zeitplan keinen Plan angeben, ruft Ihr Zeitplan das Ziel sofort 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 Amazon SQS-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 UTC (Universal Coordinated Time) 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. PST am ersten Montag jedes Monats 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 steht JAN, FEB, MAR für 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. 3WGibt 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 Amazon SQS-Warteschlange übermittelt. 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 UTC (Universal Coordinated Time) 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 Uhr UTC-8 ausgeführt wird und eine Nachricht unter Verwendung des vordefinierten Zieltyps an eine Amazon SQS-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"}'

EventBridge Zeitzonen im Scheduler

EventBridge Scheduler unterstützt die Konfiguration von cron-basierten und einmaligen Zeitplänen in jeder von Ihnen angegebenen Zeitzone. EventBridge Scheduler verwendet die Zeitzonendatenbank, die von der Internet Assigned Numbers Authority (IANA) verwaltet wird.

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 Amazon SQS SendMessage SQS-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 läuft jeden Tag um 2:30 Uhr in der angegebenen Zeitzone.

  • 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.