Analyseur d'Expressions Cron

Décomposez un planning cron champ par champ et prévisualisez ses prochaines exécutions, dans votre navigateur.

Expression cron

Prochaines exécutions

(votre heure locale)

Saisissez une expression cron pour l'analyser.

Votre expression cron est analysée dans votre navigateur. Rien n'est envoyé à BroBroGo.

FAQ

Quelle syntaxe cron cet outil prend-il en charge ?

Les 5 champs standards — minute, heure, jour du mois, mois et jour de la semaine — avec les plages (1-5), les pas (*/15), les listes (1,15), les noms abrégés de mois et de jours (JAN, MON), et les raccourcis @yearly/@monthly/@weekly/@daily/@hourly. Une règle souvent oubliée : quand le jour du mois et le jour de la semaine sont tous deux restreints (différents de *), il suffit que l'un des deux corresponde, pas besoin des deux à la fois.

Dans quel fuseau horaire les prochaines exécutions sont-elles affichées ?

Dans le fuseau horaire local de votre navigateur, celui de l'horloge de votre système. Une expression cron standard ne porte pas son propre fuseau horaire : c'est le planificateur qui l'exécute qui le détermine, donc considérez ceci comme un aperçu selon votre horloge locale, pas forcément celle du serveur.

Pourquoi le message indique-t-il que ce planning ne peut jamais se produire ?

C'est généralement un jour du mois qui n'existe pas dans l'un des mois sélectionnés — par exemple le jour 31 avec avril, juin, septembre ou novembre dans le champ mois. Choisissez un jour qui existe dans tous les mois indiqués, ou séparez le planning en plusieurs expressions.

Fonctionnement de l'Analyseur d'Expressions Cron

L'Analyseur d'Expressions Cron est un outil conçu pour décomposer une expression cron en ses différents composants individuels afin d'expliciter la signification de chaque partie du planning. En plus de cette décomposition détaillée, l'outil calcule et affiche une liste des prochaines exécutions planifiées. Ces dates et heures à venir sont présentées dans le fuseau horaire local de votre navigateur.

Le traitement de l'expression s'effectue localement: votre expression cron est analysée dans votre navigateur et rien n'est envoyé à BroBroGo.

Paramètres de saisie et configuration

L'outil utilise deux champs de saisie pour configurer l'analyse:

  • Expression cron: Un champ de saisie textuelle sur une seule ligne. L'outil accepte les expressions cron standards à 5 champs, qui correspondent dans l'ordre aux minutes, heures, jours du mois, mois et jours de la semaine. L'exemple de valeur par défaut est */15 9-17 * * MON-FRI.
  • Nombre: Un champ numérique permettant d'ajuster la quantité de prochaines exécutions affichées, avec une plage de valeurs autorisées allant de 1 à 20.

Si le champ de saisie est vide, l'outil retourne à son état initial et affiche le message « Saisissez une expression cron pour l'analyser. ».

Syntaxe prise en charge et restrictions

L'analyseur interprète la syntaxe standard à 5 champs ainsi que plusieurs notations spécifiques:

  • Plages de valeurs: Par exemple 1-5.
  • Pas (intervalles): Par exemple */15.
  • Listes: Par exemple 1,15.
  • Noms abrégés: Les mois (comme JAN) et les jours de la semaine (comme MON).
  • Raccourcis prédéfinis: Les alias @yearly, @monthly, @weekly, @daily et @hourly.

Restrictions de syntaxe

L'outil ne prend pas en charge le sixième champ optionnel pour les secondes. De plus, les extensions spécifiques à Quartz, telles que les caractères L, W ou #, ne sont pas supportées.

Décomposition du planning et affichage des résultats

Une fois l'expression validée, l'outil affiche la « Décomposition du planning » champ par champ:

  • Minute: La valeur analysée pour le champ des minutes.
  • Heure: La valeur analysée pour le champ des heures.
  • Jour du mois: La valeur analysée pour le champ du jour du mois.
  • Mois: La valeur analysée pour le champ du mois.
  • Jour de la semaine: La valeur analysée pour le champ du jour de la semaine.

Pour les champs contenant un caractère générique *, l'outil affiche la mention « N'importe lequel ». Pour les structures utilisant un pas sous la forme */n, la décomposition affiche explicitement la périodicité selon le champ concerné:

  • « Toutes les {n} minutes »
  • « Toutes les {n} heures »
  • « Tous les {n} jours » (pour le jour du mois)
  • « Tous les {n} mois »
  • « Tous les {n} jours » (pour le jour de la semaine)

Sous cette décomposition, la section « Prochaines exécutions » liste les dates et heures des futurs lancements, accompagnée de la mention « (votre heure locale) » et de l'indicateur « Exécutions affichées » pour confirmer le nombre de résultats présentés.

Gestion des erreurs et cas particuliers

Le validateur intègre des règles strictes pour identifier les erreurs de syntaxe ou de logique de planification:

  • Syntaxe incorrecte: Si l'expression saisie ne respecte pas la structure attendue, l'outil affiche le message d'erreur « Expression cron invalide. ».
  • Plannings impossibles: Si l'expression est syntaxiquement correcte mais décrit un événement qui ne peut physiquement jamais se produire, l'outil affiche le message: « Ce planning ne peut jamais se produire — vérifiez qu'il n'y a pas un jour du mois absent de l'un des mois sélectionnés. ». Ce cas de figure se produit typiquement lorsque le jour du mois est configuré sur 31 alors que les mois sélectionnés incluent uniquement des mois de 30 jours ou moins (comme avril, juin, septembre ou novembre).
  • Règle d'exclusion mutuelle des jours: Lorsque le jour du mois et le jour de la semaine sont tous deux restreints (c'est-à-dire qu'aucun d'eux n'utilise le caractère *), le planificateur cron applique une règle de disjonction (un opérateur logique OU). Il suffit que l'une des deux conditions soit remplie (soit le jour du mois correspond, soit le jour de la semaine correspond) pour que la tâche soit déclenchée.

FAQ

Quelle syntaxe cron cet outil prend-il en charge?
Les 5 champs standards — minute, heure, jour du mois, mois et jour de la semaine — avec les plages (1-5), les pas (*/15), les listes (1,15), les noms abrégés de mois et de jours (JAN, MON), et les raccourcis @yearly/@monthly/@weekly/@daily/@hourly. Une règle souvent oubliée: quand le jour du mois et le jour de la semaine sont tous deux restreints (différents de *), il suffit que l'un des deux corresponde, pas besoin des deux à la fois.

Dans quel fuseau horaire les prochaines exécutions sont-elles affichées?
Dans le fuseau horaire local de votre navigateur, celui de l'horloge de votre système. Une expression cron standard ne porte pas son propre fuseau horaire: c'est le planificateur qui l'exécute qui le détermine, donc considérez ceci comme un aperçu selon votre horloge locale, pas forcément celle du serveur.

Pourquoi le message indique-t-il que ce planning ne peut jamais se produire?
C'est généralement un jour du mois qui n'existe pas dans l'un des mois sélectionnés — par exemple le jour 31 avec avril, juin, septembre ou novembre dans le champ mois. Choisissez un jour qui existe dans tous les mois indiqués, ou séparez le planning en plusieurs expressions.