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.
Nouvelles tentatives de travail automatisées
Vous pouvez appliquer une stratégie de nouvelle tentative à vos tâches et définitions de tâches qui permet à vos tâches d'être automatiquement retentées si elles échouent. Les scénarios de défaillance possibles sont les suivants :
-
Tout code de sortie autre que zéro à partir d'un conteneur de tâche
-
EC2Défaillance ou arrêt d'une instance Amazon
-
Erreur ou panne de AWS service interne
Lorsqu'une tâche est soumise à une file d'attente de tâches et placée dans l'RUNNING
état considéré comme une tentative. Par défaut, chaque tâche a une tentative de passer à l'état SUCCEEDED
ou FAILED
. Cependant, les flux de travail de définition et de soumission des tâches peuvent être utilisés pour spécifier une stratégie de nouvelle tentative comprenant entre 1 et 10 tentatives. S'il evaluateOnExitest spécifié, il peut contenir jusqu'à 5 stratégies de nouvelle tentative. Si cette evaluateOnExitoption est spécifiée, mais qu'aucune des stratégies de nouvelle tentative ne correspond, la tâche est réessayée. Pour les tâches qui ne correspondent pas à la sortie, ajoutez une entrée finale qui se ferme pour une raison ou une autre. Par exemple, cet evaluateOnExit
objet possède deux entrées contenant des actions de RETRY
et une entrée finale contenant une action deEXIT
.
"evaluateOnExit": [ { "action": "RETRY", "onReason": "AGENT" }, { "action": "RETRY", "onStatusReason": "Task failed to start" }, { "action": "EXIT", "onReason": "*" } ]
Lors de l'exécution, la variable d'environnement AWS_BATCH_JOB_ATTEMPT
est définie sur le numéro de tentative de tâche correspondant du conteneur. La première tentative est numérotée 1
et les tentatives suivantes sont classées par ordre croissant (par exemple, 2, 3, 4).
Supposons, par exemple, qu'une tentative de travail échoue pour une raison quelconque et que le nombre de tentatives spécifié dans la configuration des nouvelles tentatives soit supérieur à ce AWS_BATCH_JOB_ATTEMPT
nombre. Ensuite, le travail est remis en RUNNABLE
état. Pour de plus amples informations, veuillez consulter États des tâches.
Note
Les tâches annulées ou résiliées ne sont pas réessayées. De même, les tâches qui échouent en raison d'une définition de tâche non valide ne sont pas réessayées.
Pour plus d'informations, voir Réessayer la stratégieCréation d'une définition de tâche à nœud unique , Tutoriel : soumettre une offre d'emploi et Codes d'erreur des tâches arrêtées.