Les tâches Cron sont planifiées à intervalles réguliers, spécifiés à l'aide d'un format basé sur unix-cron. Vous pouvez définir une planification pour que votre tâche s'exécute plusieurs fois par jour, ou certains jours et mois. Bien que nous ne recommandions plus son utilisation, l'ancienne syntaxe Cron App Engine est toujours acceptée pour les tâches existantes.
Format de la tâche Cron
Une planification est définie à l'aide du format de chaîne unix-cron (* * * * *
), qui est un ensemble de cinq champs dans une ligne, indiquant quand la tâche doit être exécutée.
Vous pouvez définir votre planification à l'aide de Google Cloud Console, de Google Cloud CLI ou de l'API REST de Cloud Scheduler.
Les champs de type date/heure ont le format et les valeurs possibles suivants, et doivent suivre l'ordre suivant:
Champ | Format des valeurs valides |
---|---|
Minute | 0-59 |
Heure | 0-23 |
jour du mois | 1-31 |
Month | 1 – 12 (ou de janvier à décembre) |
Jour de la semaine | 0-6 (ou DIM à SAT ; 7 pour dimanche) |
Caractères spéciaux
- Un champ peut contenir un astérisque (
*
), qui signifie toujours"premier-dernier". - Les plages sont composées de deux chiffres séparés par un trait d'union (
-
), et la plage spécifiée est inclusive. - Le fait de suivre une plage avec
/NUMBER
spécifie des sauts de la valeur du nombre dans la plage. Par exemple,0-23/2
et*/2
peuvent tous deux être utilisés dans le champHour
pour spécifier l'exécution toutes les deux heures. - Une liste est un ensemble de nombres (ou plages) séparés par une virgule (
,
). Par exemple,1,2,5,6
dans le champDay of the month
spécifie une exécution les premier, deuxième, cinquième et sixième jours du mois.
Fuseau horaire
Vous pouvez sélectionner le fuseau horaire pour évaluer la planification dans Google Cloud Console (sur la page Créer une tâche, sélectionnez un fuseau horaire dans la liste) ou via l'option gcloud
--time-zone
lorsque vous créez la tâche. Le fuseau horaire par défaut est Etc/UTC
.
Pour certains fuseaux horaires, l'heure d'été peut entraîner l'exécution de tâches de manière inattendue. En effet, Cloud Scheduler s'exécute sur la durée d'exécution. Dans les cas où une heure peut se produire deux fois (par exemple, dans le cas des horloges rétrogradées) et que votre tâche est planifiée à ce moment-là, votre tâche planifiée peut observer des anomalies d'exécution.
Si votre tâche nécessite une cadence très spécifique, vous pouvez choisir un fuseau horaire qui n'observe pas l'heure d'été. Plus précisément, il est recommandé pour Cloud Scheduler d'éviter tout ce problème.
Exemples de calendrier
Le tableau suivant présente des exemples de planification de tâches Cron et leur description:
Exemple de calendrier | Format de la tâche Cron |
---|---|
Toutes les minutes | * * * * * |
Tous les samedis à 23h45 | 45 23 * * 6 |
Tous les lundis à 09h (09h) | 0 9 * * 1 |
Chaque dimanche à 4h05 (4h05) | 5 4 * * SUN |
Tous les jours de la semaine (du lundi au vendredi) à 22h (22h) | 0 22 * * 1-5 |