Skip to main content

Gestion des Tâches Planifiées

Le système de Gestion des Tâches Planifiées est une fonctionnalité d'automatisation essentielle de Softyflow, vous permettant d'exécuter des processus et des tâches à des moments prédéfinis ou à des intervalles récurrents. Cet outil puissant est indispensable pour automatiser les flux de travail répétitifs, tels que la génération de rapports quotidiens, la synchronisation nocturne des données ou le déclenchement de processus en temps réel. Ce guide offre une présentation complète de la création, de la gestion et du suivi des tâches planifiées pour garantir que vos opérations se déroulent de manière fluide et efficace.

Avec la prise en charge de multiples modèles de planification, une intégration dans tous les modes d'environnement (Test, UAT et Production), et une gestion intégrée des erreurs avec des notifications automatisées, le système de planification offre la fiabilité et la flexibilité nécessaires à l'automatisation des processus métier modernes.

L'interface de configuration des automatisations planifiées et basées sur des événements.
L'interface de configuration des automatisations planifiées et basées sur des événements.

1. Aperçu des Fonctionnalités Clés

  • Planification Flexible : Définissez des planifications avec des dates de début spécifiques, des intervalles récurrents (par exemple, toutes les 30 minutes), ou des horaires très précis à l'aide d'expressions Cron.
  • Support Multi-Environnement : Développez et testez vos planifications en toute sécurité en les déployant indépendamment dans les environnements TEST, UAT et PROD.
  • Gestion Centralisée : Utilisez l'IDE de Softyflow pour une interface unifiée afin de créer, surveiller et gérer toutes les tâches planifiées de vos projets.
  • Gestion Proactive des Erreurs : Recevez des notifications automatiques par e-mail pour toute exécution de processus échouée, vous permettant d'identifier et de résoudre les problèmes immédiatement.
  • Piste d'Audit Complète : Chaque exécution planifiée est enregistrée, fournissant des journaux détaillés pour le suivi des performances, le débogage et la conformité.

2. Création d'une Nouvelle Tâche Planifiée

Cette section fournit un guide étape par étape pour configurer une nouvelle tâche planifiée directement depuis l'IDE de Softyflow.

2.1. Accéder à l'Interface de Planification

Pour commencer, accédez au tableau de bord central de planification dans l'IDE de Softyflow :

  1. Dans le menu principal, cliquez sur Ressources.
  2. Sélectionnez Tâches Planifiées dans le menu déroulant.

Ce tableau de bord offre une vue d'ensemble complète de toutes les planifications existantes et constitue le point de départ pour en créer de nouvelles.

2.2. Lancer le Processus de Création

Sur le tableau de bord de planification, cliquez sur le bouton "Créer une Tâche Planifiée" situé dans le coin supérieur droit. Cela ouvrira la boîte de dialogue de configuration de votre nouvelle planification.

La boîte de dialogue 'Créer une Tâche Planifiée'. Ici, vous sélectionnez l'environnement cible (par exemple, PROD), choisissez le projet et le processus à exécuter, et définissez la date et l'heure de début de la planification.
La boîte de dialogue 'Créer une Tâche Planifiée'. Ici, vous sélectionnez l'environnement cible (par exemple, PROD), choisissez le projet et le processus à exécuter, et définissez la date et l'heure de début de la planification.

2.3. Configurer la Planification

La boîte de dialogue de création est organisée en sections logiques pour simplifier la configuration.

2.3.1. Sélection de l'Environnement et du Processus

C'est l'étape la plus critique, car elle détermine quel processus s'exécutera et dans quel environnement.

  • Mode d'Environnement : Choisissez l'environnement cible pour la planification. Chaque environnement est isolé, ce qui permet un développement et des tests en toute sécurité.
    • TEST : Pour le développement, le débogage et la validation initiale.
    • UAT : Pour les tests d'acceptation par l'utilisateur, simulant les conditions de production.
    • PROD : Pour l'exécution en direct des processus métier critiques.
  • Projet et Processus :
    • D'abord, sélectionnez le Projet contenant le processus souhaité.
    • Ensuite, choisissez le Processus à exécuter. La liste est automatiquement filtrée pour n'afficher que les processus disponibles dans le projet sélectionné.

2.3.2. Définir l'Heure de Début

  • Date et Heure de Début : Utilisez le calendrier et le sélecteur d'heure pour définir le moment exact où la planification doit devenir active. L'heure est configurée avec une précision à la minute.

3. Options de Planification Avancées

Après avoir défini les paramètres de base, vous devez définir la fréquence d'exécution en utilisant l'un des modèles disponibles.

3.1. Planification Basée sur un Intervalle

Cette option est parfaite pour les tâches qui doivent s'exécuter à des intervalles réguliers et fixes.

  • Comment ça Marche : Sélectionnez une unité de temps (Jours, Heures ou Minutes) et spécifiez une valeur numérique pour le délai. La première exécution aura lieu après que l'intervalle spécifié se soit écoulé à partir de la Date et Heure de Début.
  • Exemple : Pour exécuter un processus toutes les 2 heures, sélectionnez "Heures" et entrez 2 dans le champ de délai. Le processus s'exécutera deux heures après l'heure de début spécifiée et se répétera toutes les deux heures par la suite.

3.2. Planification par Expression Cron

Pour des besoins de planification plus complexes et précis, Softyflow prend en charge les expressions Cron standard. Cela offre un contrôle maximal sur le calendrier d'exécution.

3.2.1. Comprendre la Syntaxe Cron

Une expression Cron est une chaîne de caractères composée de 7 champs, chacun représentant une unité de temps spécifique. Softyflow utilise le format suivant :

Secondes (0-59) | Minutes (0-59) | Heures (0-23) | Jour du Mois (1-31) | Mois (1-12) | Jour de la Semaine (0-7) | Année (1970-2099)

Note : Pour le Jour de la Semaine, 0 et 7 représentent tous deux le dimanche.

3.2.2. Exemples Courants d'Expressions Cron

  • Chaque jour de la semaine à 9:00 : 0 0 9 * * MON-FRI *
  • Chaque jour à 14:30 : 0 30 14 * * * *
  • Le premier jour de chaque mois à minuit : 0 0 0 1 * * *
  • Toutes les 15 minutes : 0 */15 * * * * *

3.2.3. Validation en Temps Réel

Pour éviter les erreurs, le système inclut un validateur d'expression Cron intégré :

  • Une coche verte apparaît si la syntaxe de l'expression est valide.
  • Un X rouge indique une erreur de syntaxe. Cliquez sur le bouton de validation pour voir un message d'erreur détaillé qui vous aidera à corriger l'expression.

Astuce : Pour créer et valider des expressions Cron complexes, vous pouvez utiliser des outils externes comme Crontab Guru.

4. Suivi et Gestion des Planifications

La page 'Monitor & Run' offre une vue d'ensemble complète de toutes les instances de processus.
La page 'Monitor & Run' offre une vue d'ensemble complète de toutes les instances de processus.

Le tableau de bord de planification offre un emplacement centralisé pour suivre l'état et le cycle de vie de vos tâches.

  • Visualiser les Planifications : Le tableau de bord liste toutes les planifications configurées, affichant des informations clés telles que le projet associé, la prochaine heure d'exécution planifiée, l'environnement cible et l'état actuel.
  • Modifier une Planification : Cliquez sur l'icône de modification pour modifier une planification existante. Vous pouvez changer sa fréquence, mettre à jour le processus cible ou ajuster son heure de début.
  • Mettre en Pause et Reprendre : Vous pouvez désactiver temporairement une planification sans la supprimer en utilisant la fonction "Mettre en Pause". Une planification en pause peut être réactivée à tout moment en la reprenant.
  • Supprimer une Planification : Supprimez définitivement une planification qui n'est plus nécessaire. Cette action est irréversible.

5. Gestion des Erreurs et Notifications

Exemple d'une instance avec une erreur, clairement marquée pour attirer l'attention.
Exemple d'une instance avec une erreur, clairement marquée pour attirer l'attention.

Softyflow fournit des mécanismes robustes pour détecter et signaler automatiquement les échecs d'exécution, vous assurant de pouvoir réagir aux problèmes de manière proactive.

5.1. Détection Automatique des Erreurs

Le système surveille en permanence les tâches planifiées et signale plusieurs types de problèmes :

  • Instances de Processus Échouées : Se produit lorsqu'un processus démarre comme prévu mais se termine de manière inattendue en raison d'une erreur.
  • Délais d'Exécution Dépassés : Déclenché si un processus s'exécute plus longtemps que son temps d'exécution maximal configuré.
  • Erreurs au Niveau du Système : Échecs provenant du service de planification lui-même.

5.2. Notifications par E-mail en Cas d'Échec

Pour garantir une attention rapide aux échecs, le système peut envoyer des notifications automatiques par e-mail à une liste prédéfinie de destinataires.

Prérequis de Configuration :

  • Fournisseur de Messagerie : Un fournisseur de services de messagerie (par exemple, SMTP) doit être correctement configuré dans les paramètres système. Pour plus de détails, consultez le Guide de Configuration de la Messagerie.
  • Destinataires du Projet : Vous devez définir une liste d'adresses e-mail dans les paramètres du projet pour recevoir ces notifications.

Contenu de la Notification : L'e-mail fournit un résumé clair et exploitable de l'échec, incluant :

  • Le projet et le processus qui ont échoué.
  • Une liste de tous les ID d'instance échoués.
  • L'horodatage exact de l'échec.
  • Un lien direct vers chaque instance échouée dans l'interface de Softyflow, permettant une investigation immédiate.

5.3. Comment Résoudre les Erreurs

  1. Analyser la Notification : Lisez attentivement l'e-mail de notification d'échec pour comprendre le contexte et la portée de l'erreur.
  2. Inspecter l'Instance Échouée : Utilisez le lien dans l'e-mail pour accéder directement à l'instance échouée. Examinez les journaux d'exécution et les variables du processus pour diagnostiquer la cause première.
  3. Corriger le Problème Sous-Jacent : Corrigez le problème. Cela peut impliquer de modifier la conception du processus, de résoudre un problème dans un système intégré ou de corriger les données d'entrée.
  4. Réexécuter ou Replanifier : Une fois le correctif déployé, vous pouvez soit réexécuter manuellement l'instance échouée, soit attendre la prochaine exécution planifiée.

6. Meilleures Pratiques pour la Planification

Le respect de ces meilleures pratiques vous aidera à créer des planifications fiables, efficaces et faciles à gérer.

6.1. Lignes Directrices Générales

  1. Tester dans les Environnements Inférieurs : Créez et testez toujours minutieusement les planifications dans l'environnement TEST avant de les promouvoir en UAT ou en PROD.
  2. Éviter la Surcharge de Planification : Soyez conscient des ressources système. Des planifications à haute fréquence (par exemple, chaque minute ou moins) sur des processus lourds peuvent dégrader les performances globales du système.
  3. Décaler les Charges Lourdes : Si vous avez plusieurs processus gourmands en ressources, planifiez-les à des moments différents et non superposés pour éviter les conflits de ressources.
  4. Définir des Délais d'Attente Réalistes : Configurez des limites de temps d'attente appropriées pour vos processus afin d'éviter qu'ils ne s'exécutent indéfiniment et ne consomment des ressources.

6.2. Conseils pour les Expressions Cron

  1. Utiliser des Validateurs Externes : Pour les expressions complexes, utilisez un générateur ou un validateur Cron en ligne comme Crontab Guru pour vous assurer que la syntaxe et le calendrier sont corrects avant d'enregistrer.
  2. Tenir Compte des Fuseaux Horaires : Toutes les planifications s'exécutent en fonction du fuseau horaire du serveur. Assurez-vous que vos expressions Cron sont écrites en conséquence.
  3. Documenter Vos Expressions : Ajoutez des commentaires ou des notes dans la documentation interne de votre projet pour expliquer le but des expressions Cron complexes, notamment à des fins de maintenance.

6.3. Gestion de l'Environnement

  1. Maintenir l'Isolation des Environnements : Ne faites jamais pointer une planification de TEST vers un système de PROD ou vice-versa. Utilisez des planifications distinctes pour TEST, UAT et PROD.
  2. Promouvoir avec une Check-list : Avant d'activer une planification en production, vérifiez sa configuration par rapport à une check-list de déploiement pour vous assurer que tout est correct.
  3. Surveiller Après le Déploiement : Après avoir déployé une nouvelle planification en production, surveillez attentivement les performances du système (CPU, mémoire, charge de la base de données) pour vous assurer qu'elle n'introduit pas de goulots d'étranglement.

7. Dépannage des Problèmes Courants

Cette section aborde les problèmes courants que vous pourriez rencontrer avec le système de planification et fournit des conseils sur la manière de les résoudre.

7.1. La Planification ne s'Exécute Pas

  • Vérifier la Date et l'Heure de Début : Assurez-vous que la date/heure de début de la planification n'est pas définie sur un moment futur ou incorrectement dans le passé. Si la date de début est dans le passé, le planificateur pourrait ne pas la déclencher comme prévu selon le modèle.
  • Valider le Processus : Confirmez que le processus planifié a été déployé dans l'environnement cible et n'a pas été supprimé ou désactivé.
  • Confirmer que le Service d'Agenda est en Cours d'Exécution : Vérifiez auprès de votre administrateur système que le service sous-jacent Softyflow Agenda est actif et fonctionne sans erreurs.

7.2. L'Expression Cron ne Fonctionne Pas Comme Prévu

  • Vérifier les 7 Champs : N'oubliez pas que les expressions Cron dans Softyflow nécessitent les sept champs (y compris Secondes et Année). De nombreux outils en ligne n'en utilisent que cinq.
  • Vérifier les Caractères Spéciaux : Vérifiez que les caractères spéciaux comme *, /, - et ? sont utilisés correctement selon la syntaxe Cron standard.
  • Utiliser le Validateur Intégré : Le validateur en temps réel de l'interface utilisateur est votre outil le plus fiable pour détecter les erreurs de syntaxe avant d'enregistrer.

7.3. Les Notifications par E-mail ne sont Pas Envoyées

  • Vérifier la Configuration de la Messagerie : Accédez aux paramètres d'administration et confirmez que les paramètres du fournisseur de messagerie sont corrects, et testez la connexion si possible.
  • Vérifier la Liste des Destinataires : Vérifiez les paramètres du projet pour vous assurer que les adresses e-mail des destinataires sont correctement saisies et qu'il n'y a pas de fautes de frappe.
  • Vérifier les Dossiers Spam/Indésirables : Demandez aux destinataires prévus de vérifier leurs dossiers de spam ou de courrier indésirable, car les notifications automatisées peuvent parfois y être classées.

7.4. Dégradation des Performances du Système Après l'Activation d'une Planification

  • Examiner la Fréquence de la Planification et la Complexité du Processus : Une planification très fréquente exécutant un processus complexe et long est une cause fréquente de problèmes de performances.
  • Analyser la Charge de la Base de Données : Le service de planification utilise la base de données pour la coordination. Une charge élevée de la base de données peut ralentir le planificateur. Recherchez des requêtes lentes ou des conflits de ressources.
  • Identifier les Tâches Superposées : Vérifiez si plusieurs tâches de longue durée sont planifiées pour démarrer en même temps, ce qui peut entraîner une compétition pour les ressources.

Si vous continuez à rencontrer des problèmes, consultez les journaux système détaillés ou contactez votre administraterateur système pour une assistance supplémentaire.