AWS-Cron-Syntax
Ein EventBridge-Ausdruck sieht aus wie cron(0 12 * * ? *) und hat sechs Felder: Minuten, Stunden, Tag im Monat, Monat, Wochentag und Jahr. Es gibt kein Sekundenfeld, die feinste Auflösung ist also eine Minute. Wochentage laufen von 1 (Sonntag) bis 7 (Samstag), Namen wie MON-FRI funktionieren ebenfalls. Achte darauf, dass die Felder in genau dieser Reihenfolge stehen, denn ein vertauschtes Feld ergibt oft einen gültigen, aber falschen Zeitplan.
Regeln, die gelten
Eines der beiden Tagesfelder muss „?“ sein: cron(0 8 ? * MON-FRI *) für Werktagmorgen, cron(0 8 1 * ? *) für den Monatsersten. Das Jahresfeld ist Pflicht; * steht für jedes Jahr. L, W und # werden in den Tagesfeldern unterstützt, etwa cron(0 18 L * ? *) für den letzten Tag jedes Monats.
Zeitzonen
Geplante EventBridge-Regeln laufen immer in UTC. Deshalb wertet das Tool AWS-Ausdrücke standardmäßig in UTC aus und zeigt neben jeder Ausführung deine Ortszeit. EventBridge Scheduler kann einem Zeitplan eine Zeitzone zuordnen; wähle dann dieselbe Zone im Auswahlfeld, um ihn korrekt zu prüfen.
Cron oder rate?
Für feste Intervalle wie alle 15 Minuten ist ein rate-Ausdruck einfacher: rate(15 minutes) zählt ab dem Anlegen der Regel. Nutze cron, wenn der Job zu Kalenderzeiten laufen muss – werktags um 08:00, am Monatsletzten oder nur in einem bestimmten Jahr. EventBridge Scheduler unterstützt zusätzlich einmalige at(...)-Zeitpläne und flexible Zeitfenster, die Aufrufe verteilen.
Häufige Fragen
- Warum lehnt AWS meinen Cron-Ausdruck ab?
- Typische Ursachen sind fünf statt sechs Felder, ein fehlendes Jahresfeld oder kein „?“ im Feld Tag im Monat bzw. Wochentag. Die Fehlermeldung nennt das betroffene Feld.
- Wie starte ich eine Lambda alle 5 Minuten per Cron?
- Mit cron(0/5 * * * ? *). Für einfache Intervalle akzeptiert EventBridge auch rate(5 minutes).
- Läuft AWS-Cron in UTC?
- Bei EventBridge-Regeln ja. Mit EventBridge Scheduler lässt sich pro Zeitplan eine Zeitzone festlegen.
- Was ist das kürzeste Intervall?
- Eine Minute, weil AWS-Cron kein Sekundenfeld hat.