Gestion des erreurs dans Amazon SWF - Amazon Simple Workflow Service

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Gestion des erreurs dans Amazon SWF

Différents types d'erreurs peuvent survenir au cours d'une exécution de flux de travail.

Erreurs de validation

Les erreurs de validation se produisent lorsqu'une demande envoyée à Amazon SWF échoue, car son contenu ou ses données ne sont pas valides. Dans ce contexte, il peut s'agir d'une action comme DescribeDomain ou d'une décision comme StartTimer. S'il s'agit d'une action, Amazon SWF renvoie un code d'erreur dans la réponse. Vérifiez ce code d'erreur, car il peut indiquer la cause de l'échec. Par exemple, il se peut qu'un ou plusieurs des arguments transmis avec la requête ne soient pas valides. Pour obtenir une liste des codes d'erreur les plus communs, consultez la rubrique de l'action correspondant dans le documentRéférence de l'API Amazon Simple Workflow Service.

Si la requête qui a échoué est une décision, un événement approprié figure dans l'historique d'exécution du flux de travail. Par exemple, si la décision StartTimer a échoué, l'événement StartTimerFailed apparaît dans l'historique. Le décideur doit vérifier ces événements lorsqu'il reçoit l'historique en réponse à l'action PollForDecisionTask ou GetWorkflowExecutionHistory. Voici une liste des événements d'échec qui peuvent se produire lorsque la décision n'est pas correctement formée ou lorsqu'elle contient des données non valides.

Erreur lors de l'application d'actions ou de décisions

Même si la demande est correctement formée, des erreurs peuvent se produire lorsqu'Amazon SWF tente d'exécuter la demande. Dans ce cas, l'un des événements suivants de l'historique indique qu'une erreur est survenue. Examinez le champ reason de l'événement afin de déterminer la cause de l'échec.

Délais

Les décideurs, les outils de traitement d'activité et les exécutions de flux de travail sont tous soumis à des délai d'expiration. Avec ce type d'erreur, une tâche ou un flux de travail enfant expire. Un événement qui décrit l'expiration s'affiche dans l'historique. Pour gérer cet événement, le décideur doit, par exemple, replanifier la tâche ou redémarrer le flux de travail enfant. Pour plus d'informations sur les délais d'expiration, consultez la section Types Amazon SWF Timeout .

Erreurs déclenchées par le code utilisateur

Ce type de condition d'erreur correspond, par exemple, à l'échec d'une tâche d'activité ou d'un flux de travail enfant. Comme avec les erreurs liées à l'expiration d'un délai, Amazon SWF ajoute un événement approprié dans l'historique d'exécution du flux de travail. Pour gérer cet événement, le décideur doit essayer de replanifier la tâche ou de redémarrer le flux de travail enfant.

Les décideurs peuvent également voir les événements suivants s'ils essaient de fermer un flux de travail avec une tâche de décision en attente.

Pour plus d'informations sur les événements répertoriés ci-dessus, consultez la pageÉvénement d'histoiredans la référence de l'API Amazon SWF.