Skip to content

Échec d’un workflow ​

Démarre quand une exécution d’un workflow qui désigne celui-ci comme workflow d’erreur échoue. Le compte rendu arrive dans data.failure.

Le déclencheur Échec d’un workflow démarre le workflow d’erreur : le workflow qui réagit quand un autre workflow échoue. Un workflow est désigné comme workflow d’erreur d’un ou plusieurs autres dans leurs réglages. Quand une exécution réelle de l’un d’eux se conclut par un échec définitif, une exécution du workflow qui porte ce déclencheur démarre, avec le compte rendu de l’échec sous data.failure.

Si l’exécution en échec avait un mail porteur, le workflow d’erreur en hérite : {{ email.… }} fonctionne, et les nœuds qui agissent sur le mail porteur (répondre dans le fil, Déplacer, Marquer) sont utilisables. Servez-vous-en pour prévenir quelqu’un, ouvrir un incident dans une table ou répondre à l’expéditeur qui n’a pas eu de résultat. Pour les échecs eux-mêmes et leur rejeu, voir Erreurs et rejeu.

En bref ​

  • Type : trigger.error · version 1
  • Catégorie : Déclencheurs
  • Nature : Déclencheur — lance une exécution
  • Effet : Sans effet externe (none) — rien n’est écrit hors de Mankomail ; rejouable sans risque
  • Exige un mail porteur : Non
  • Connexion : Aucune
  • Sorties : main

Paramètres ​

Ce nœud n’a aucun paramètre.

Sorties ​

  • main — Emprunté par chaque exécution du workflow d’erreur démarrée parce qu’une exécution d’un autre workflow a échoué.

Données produites ​

Ce que ce nœud ajoute aux données de l’exécution, et comment le lire dans une expression. <step> désigne la clé de l’étape : le nom du nœud ramené à un identifiant (voir Données et expressions).

  • {{ data.failure }} — object. Le compte rendu de l’exécution en échec : quel workflow, quelle exécution, quelle étape, quelle erreur et quand.
  • {{ data.failure.workflowName }} — string. Le nom du workflow dont l’exécution a échoué. Son identifiant est {{ data.failure.workflowId }}.
  • {{ data.failure.executionId }} — string. L’identifiant de l’exécution en échec. {{ data.failure.workflowVersionId }} est la version du workflow qui tournait.
  • {{ data.failure.failedAt }} — string. L’instant de l’échec, en date et heure ISO 8601.
  • {{ data.failure.error.code }} — string. Le code d’erreur de l’échec (voir la référence des codes d’erreur). step_failed quand l’exécution en échec n’en portait pas.
  • {{ data.failure.error.message }} — string. Le message d’erreur. Vide quand l’exécution en échec n’en portait pas.
  • {{ data.failure.nodeName }} — string. Le nom du nœud en échec. Absent quand l’échec n’est pas rattaché à un nœud. {{ data.failure.nodeId }} et {{ data.failure.nodeType }} donnent son identifiant et son type, quand ils sont connus.
  • {{ data.failure.mailboxId }} — string. La boîte du mail porteur de l’exécution en échec, quand elle en avait un ({{ data.failure.messageId }} est le message). Absent sinon.
  • {{ email.subject }} — string. Le mail porteur de l’exécution en échec, hérité tel quel (tous les champs email.…). Vide quand l’exécution en échec n’en avait pas.

Example ​

Un workflow « Alerte en cas d’échec » commence par Échec d’un workflow, suivi d’un nœud Envoyer qui écrit à votre propre adresse :

Objet : {{ data.failure.workflowName }} a échoué
Corps : L’étape « {{ data.failure.nodeName }} » a échoué avec {{ data.failure.error.code }} :
        {{ data.failure.error.message }}

Publiez-le, puis choisissez-le comme workflow d’erreur dans les réglages des workflows à surveiller. Chaque fois qu’une exécution réelle de l’un d’eux échoue définitivement, une exécution de « Alerte en cas d’échec » démarre sur son port main.

Tips ​

  • Workflow publié obligatoire. Le workflow d’erreur doit être publié, appartenir au même membre que le workflow en échec et contenir un déclencheur Échec d’un workflow. Sinon rien ne démarre.
  • Exécutions réelles uniquement. Un essai qui échoue ne démarre jamais le workflow d’erreur : il se voit sur le canvas (voir Essais).
  • Une alerte par échec. Un échec démarre le workflow d’erreur une seule fois, même si la conclusion de l’exécution est traitée de nouveau.
  • Pas de chaîne. Une exécution d’un workflow d’erreur qui échoue ne démarre pas un autre workflow d’erreur, et un workflow ne peut pas être son propre workflow d’erreur.
  • Boucles. Un échec dans une itération d’une boucle est signalé par la boucle elle-même, pas par chaque itération.
  • Rien à écouter. Ce déclencheur n’arme rien : le workflow ne tourne que lorsqu’un échec lui est signalé.
  • Un compte rendu contient des identifiants, des codes et des messages, jamais le contenu du mail : lisez-le avec {{ email.… }}.