Événement de remise en file d’attente de tâche

Cet événement est émis lorsque Batch remet une tâche en file d’attente afin qu’elle puisse être programmée à nouveau.

Une tâche peut être remise en file d’attente après des actions de service telles que la suppression de nœuds, des opérations de désactivation de tâches qui remettent des tâches en file d’attente, ou d’autres scénarios de récupération pilotés par le service.

Lorsque la tâche remise en file d’attente est à nouveau programmée, Batch émet un nouvel événement de démarrage de tâche pour cette tentative ultérieure.

L’exemple suivant montre le corps d’un événement de remise en file d’attente de tâche.

{
    "jobId": "myJob",
    "id": "myTask",
    "taskType": "User",
    "systemTaskVersion": 3,
    "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": 11,
        "retryCount": 0,
        "requeueCount": 1,
        "result": "failure",
        "schedulingError": {
            "category": "UserError",
            "code": "BadCommandType",
            "message": "Task has invalid command",
            "details": [
                {
                    "name": "Reason",
                    "value": "Access denied"
                }
            ]
        }
    }
}

exitCode, result, et schedulingError ne sont remplis que lorsque Batch dispose d’informations d’erreur d’exécution pour la tâche remise en file.

Nom de l'élément Type Notes
jobId String ID du travail contenant la tâche.
id String ID de la tâche.
taskType String Type de la tâche. Cela indique soit JobManager que c’est une tâche de gestionnaire de tâches, soit User que ce n’est pas une tâche de gestionnaire de tâches. Cet événement n’est pas émis pour les tâches de préparation du travail, les tâches de mise en production du travail ou les tâches de démarrage. Pour ces tâches, voir Événement de la tâche spéciale.
systemTaskVersion Int32 Compteur de nouvelles tentatives 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 le plus récemment.
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’état d’exécution capturé lors de la remise en file d’attente de la tâche.

nodeInfo

Nom de l'élément Type Notes
poolId String L’identifiant du pool sur lequel la tâche s’est déroulée la plus récemment.
nodeId String L’identifiant du nœud sur lequel la tâche s’est exécutée la plus récemment.

multiInstanceSettings

Nom de l'élément Type Notes
numberOfInstances Int32 Nombre de nœuds de calcul requis par la tâche.

Contraintes

Nom de l'élément Type Notes
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 égal à 3, Batch tente une tâche jusqu’à quatre fois (une tentative initiale et trois 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).

informations d'exécution

Nom de l'élément Type Notes
startTime Date et heure Le moment où la tâche a commencé à s’exécuter le plus récemment avant d’être remise en file d’attente. Si la tâche n’avait pas commencé, ce champ pourrait être omis.
endTime Date et heure Le moment où la tâche a cessé de s’exécuter la dernière fois avant d’être remise en file d’attente. Si la tâche n’avait pas commencé, ce champ pourrait être omis.
exitCode Int32 Le code de sortie de la dernière exécution de la tâche, lorsque Batch en a une à signaler. Sinon, ce champ est omis.
retryCount Int32 Nombre de fois où le service Batch a retenté la tâche. La tâche est réessayée si elle sort avec un code de sortie non nul, jusqu’au nombre maximal de tentatives de tâches spécifié.
requeueCount Int32 Le nombre de fois où le service Batch a relancé la tâche. Dans la charge utile actuellement émise, ce champ reflète le compteur de requeue courant du service pour la tâche.
result String Une chaîne de résultats définie par service pour la tâche lorsqu’une chaîne est disponible.
schedulingError Type complexe Contient des informations détaillées sur l’erreur signalée, si une est disponible.

schedulingError

Nom de l'élément Type Notes
category String La catégorie d’erreur, par exemple UserError.
code String Le code d’erreur, par exemple BadCommandType.
message String Message d’erreur.
details Tableau Une liste de paires nom-valeur qui fournit plus de détails sur l’erreur. Si aucune valeur de détail supplémentaire n’est disponible, le tableau est vide.

details

Nom de l'élément Type Notes
name String Le nom du détail.
value String La valeur du détail.