Cronjobs werden in wiederkehrenden Intervallen geplant und in einem Format angegeben, das auf unix-cron basiert. Sie können einen Zeitplan so festlegen, dass Ihr Job mehrmals am Tag oder an bestimmten Tagen und in bestimmten Monaten ausgeführt wird. Obwohl wir ihre Verwendung nicht mehr empfehlen, wird die alte Cron-Syntax von App Engine für vorhandene Jobs weiterhin unterstützt.
Cronjob-Format
Ein Zeitplan wird im unix-cron-Stringformat (* * * * *
) definiert. Dieser besteht aus fünf Feldern in einer Zeile, die angibt, wann der Job ausgeführt werden soll.
Zum Festlegen Ihres Zeitplans können Sie entweder die Google Cloud Console, die Google Cloud CLI oder die REST API von Cloud Scheduler verwenden.
Die Zeitfelder haben das folgende Format und mögliche Werte und müssen in dieser Reihenfolge angegeben werden:
Feld | Format gültiger Werte |
---|---|
Minute | 0–59 |
Stunde | 0–23 |
Day of the month | 1–31 |
Monat | 1–12 (oder JAN bis DEZ) |
Wochentag | 0–6 (oder SO bis SA oder 7 für Sonntag) |
Sonderzeichen
- Ein Feld kann ein Sternchen (
*
) enthalten, das immer für „Vor- und Nachname“ steht. - Bereiche sind zwei durch einen Bindestrich (
-
) getrennte Zahlen und der angegebene Bereich ist einschließlich. - Wenn Sie einem Bereich mit
/NUMBER
folgen, werden übersprungene Werte des Nummernwerts durch den Bereich. Beispielsweise können0-23/2
und*/2
im FeldHour
verwendet werden, um die Ausführung alle zwei Stunden festzulegen. - Eine Liste besteht aus Zahlen oder Bereichen, die durch Kommas getrennt sind (
,
). Beispielsweise gibt1,2,5,6
im FeldDay of the month
die Ausführung am ersten, zweiten, fünften und sechsten Tag des Monats an.
Zeitzone
Sie können die Zeitzone für die Auswertung des Zeitplans entweder in der Google Cloud Console (auf der Seite Job erstellen, in der Liste Zeitzone) oder beim Erstellen des Jobs über das gcloud
---time-zone
-Flag auswählen. Die Standardzeitzone ist Etc/UTC
.
In einigen Zeitzonen kann die Sommerzeit dazu führen, dass Jobs unerwartet oder nicht ausgeführt werden. Das liegt daran, dass Cloud Scheduler nach der Wanduhrzeit läuft. In Fällen, in denen eine Zeit zweimal vorkommen kann (z. B. wenn die Uhr rückwärts geht) und Ihr Job zu diesem Zeitpunkt geplant ist, kann Ihr geplanter Job möglicherweise Abweichungen bei der Ausführung beobachten.
Wenn für Ihren Job eine sehr spezifische Kadenz erforderlich ist, können Sie auch eine Zeitzone auswählen, bei der keine Sommerzeit beachtet wird. Für Cloud Scheduler wird insbesondere UTC empfohlen, um das Problem vollständig zu vermeiden.
Beispielzeitpläne
Die folgende Tabelle enthält einige Beispiele für Cronjob-Zeitpläne und ihre Beschreibung:
Beispielzeitplan | Cronjob-Format |
---|---|
Jede Minute | * * * * * |
Jeden Samstag um 23:45 Uhr | 45 23 * * 6 |
Jeden Montag um 09:00 Uhr (09:00 Uhr) | 0 9 * * 1 |
Jeden Sonntag um 04:05 (4:05 Uhr) | 5 4 * * SUN |
Jeden Wochentag (Mo–Fr) um 22:00 Uhr | 0 22 * * 1-5 |