Partager via


Événement d’échec de tâche

Cet événement est émis lorsqu’une tâche se termine par un échec. Actuellement, tous les codes de sortie non zéro sont considérés comme des échecs. Cet événement est émis en plus d’un événement complet de tâche et peut être utilisé pour détecter l’échec d’une tâche.

L’exemple suivant montre le corps d’un événement d’échec de tâche.

{
    "jobId": "myJob",
    "id": "myTask",
    "taskType": "User",
    "systemTaskVersion": 0,
    "requiredSlots": 1,
    "nodeInfo": {
        "poolId": "pool-001",
        "nodeId": "tvm-257509324_1-20160908t162728z"
    },
    "multiInstanceSettings": {
        "numberOfInstances": 1
    },
    "constraints": {
        "maxTaskRetryCount": 2
    },
    "executionInfo": {
        "startTime": "2016-09-08T16:32:23.799Z",
        "endTime": "2016-09-08T16:34:00.666Z",
        "exitCode": 1,
        "retryCount": 2,
        "requeueCount": 0
    }
}
Nom de l’élément Catégorie Remarques
jobId Chaîne ID du travail contenant la tâche.
id Chaîne ID de la tâche.
taskType Chaîne Type de la tâche. Il s’agit de « JobManager » indiquant qu’il s’agit d’une tâche de gestionnaire de travaux ou d’un « Utilisateur » indiquant qu’il ne s’agit pas d’une tâche de gestionnaire de travaux. Il n’est pas émis pour les tâches de préparation des travaux, les tâches de mise en production du travail ou les tâches de démarrage.
systemTaskVersion Int32 Il s’agit du compteur de nouvelle tentative interne sur une tâche. En interne, le service Batch peut réessayer une tâche pour prendre en compte les problèmes temporaires. Ces problèmes peuvent inclure des erreurs de planification internes ou des tentatives de récupération à partir de nœuds de calcul dans un état incorrect.
requiredSlots Int32 Emplacements requis pour exécuter la tâche.
nodeInfo Type complexe Contient des informations sur le nœud de calcul sur lequel la tâche s’est exécutée.
multiInstanceSettings Type complexe Spécifie que la tâche est une tâche multi-instance nécessitant plusieurs nœuds de calcul. Pour plus d’informations, consultez multiInstanceSettings.
constraints Type complexe Contraintes d’exécution qui s’appliquent à cette tâche.
executionInfo Type complexe Contient des informations sur l’exécution de la tâche.

nodeInfo

Nom de l’élément Catégorie Remarques
poolId Chaîne ID du pool sur lequel la tâche s’est exécutée.
nodeId Chaîne ID du nœud sur lequel la tâche s’est exécutée.

multiInstanceSettings

Nom de l’élément Catégorie Remarques
numberOfInstances Int32 Nombre de nœuds de calcul requis par la tâche.

Contraintes

Nom de l’élément Catégorie Remarques
maxTaskRetryCount Int32 Nombre maximal de fois où la tâche peut être retentée. Le service Batch retente une tâche si son code de sortie n’est pas différent de zéro.

Cette valeur contrôle spécifiquement le nombre de nouvelles tentatives. Le service Batch tente la tâche une seule fois, puis peut réessayer jusqu’à cette limite. Par exemple, si le nombre maximal de nouvelles tentatives est de 3, Batch tente une tâche jusqu’à 4 fois (une tentative initiale et 3 nouvelles tentatives).

Si le nombre maximal de nouvelles tentatives est égal à 0, le service Batch n’effectue pas de nouvelles tentatives.

Si le nombre maximal de nouvelles tentatives est -1, le service Batch retente des tâches sans limite.

La valeur par défaut est 0 (aucune nouvelle tentative).

executionInfo

Nom de l’élément Catégorie Remarques
startTime Date et heure Heure à laquelle la tâche a commencé à s’exécuter. « En cours d’exécution » correspond à l’état en cours d’exécution . Par conséquent, si la tâche spécifie des fichiers de ressources ou des packages d’application, l’heure de début reflète l’heure à laquelle la tâche a commencé à télécharger ou à les déployer. Si la tâche est redémarrée ou retentée, il s’agit de l’heure la plus récente à laquelle la tâche a commencé à s’exécuter.
endTime Date et heure Heure à laquelle la tâche s’est terminée.
exitCode Int32 Code de sortie de la tâche.
retryCount Int32 Nombre de tentatives de la tâche par le service Batch. La tâche est retentée si elle se termine avec un code de sortie différent de zéro, jusqu’au MaxTaskRetryCount spécifié.
requeueCount Int32 Nombre de fois où la tâche est mise en file d’attente par le service Batch à la suite de la demande de l’utilisateur.

Lorsque les utilisateurs suppriment des nœuds d’un pool (en redimensionnement ou en le réduisant) ou désactivent un travail, ils peuvent choisir de réinscrire les tâches en cours d’exécution sur ces nœuds pour l’exécution. Ce nombre suit le nombre de fois où la tâche est mise en file d’attente pour ces raisons.