Evento de reenfileira de tarefa

Esse evento é emitido quando o Batch coloca uma tarefa novamente na fila para que ela possa ser agendada novamente.

Uma tarefa pode ser reenfileirada após ações de serviço, como remoção de nós, operações de desabilitação de tarefas que recolocam tarefas na fila, ou outros cenários de recuperação orientados a serviços.

Quando a tarefa reenfileirada é agendada novamente, o Batch emite um novo evento de início de tarefa para essa tentativa posterior.

O exemplo a seguir mostra o corpo de um evento de reenfileira de tarefa.

{
    "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, e schedulingError são preenchidos apenas quando o Batch possui informações de erro de execução para a tarefa reenfileirada.

Nome do elemento Tipo Notes
jobId String A ID do trabalho que contém a tarefa.
id String A ID da tarefa.
taskType String O tipo da tarefa. Ou JobManager indica que é uma tarefa de gerente de trabalho ou User que não é uma tarefa de gerente de trabalho. Esse evento não é emitido para tarefas de preparação de trabalho, tarefas de liberação de trabalho ou tarefas de início. Para essas tarefas, veja Evento de Tarefa Especial.
systemTaskVersion Int32 O contador de repetição interno em uma tarefa. Internamente, o serviço do Lote pode tentar novamente uma tarefa para considerar problemas transitórios. Esses problemas podem incluir erros de agendamento internos ou tentativas de recuperação de nós de computação em um estado incorreto.
requiredSlots Int32 Os slots necessários para executar a tarefa.
nodeInfo Tipo complexo Contém informações sobre o nó de computação no qual a tarefa foi executada mais recentemente.
multiInstanceSettings Tipo complexo Especifica que a tarefa é uma tarefa de várias instâncias que exige vários nós de computação. Consulte multiInstanceSettings para obter detalhes.
constraints Tipo complexo As restrições de execução que se aplicam a essa tarefa.
executionInfo Tipo complexo Contém informações sobre o estado de execução capturado quando a tarefa foi reenfileirada.

nodeInfo

Nome do elemento Tipo Notes
poolId String O ID do pool em que a tarefa foi executada mais recentemente.
nodeId String O ID do nó no qual a tarefa foi executada mais recentemente.

multiInstanceSettings

Nome do elemento Tipo Notes
numberOfInstances Int32 O número de nós de computação exigidos pela tarefa.

restrições

Nome do elemento Tipo Notes
maxTaskRetryCount Int32 O número máximo de vezes que a tarefa pode ser repetida. O serviço do Lote tentará novamente uma tarefa se o código de saída não for zero.

Esse valor controla especificamente o número de tentativas. O serviço do Lote tenta a tarefa uma vez e pode tentar novamente até esse limite. Por exemplo, se a contagem máxima de repetição for 3, o Lote tentará uma tarefa até quatro vezes (uma tentativa inicial e três tentativas).

Se a contagem máxima de repetição for 0, o serviço do Lote não repetirá as tarefas.

Se a contagem máxima de repetição for -1, o serviço do Lote repetirá as tarefas sem limite.

O valor padrão é 0 (sem novas tentativas).

informações de execução

Nome do elemento Tipo Notes
startTime Data e hora O momento em que a tarefa começou a ser executada mais recentemente antes de ser reenfileirada. Se a tarefa não tivesse começado, esse campo poderia ser omitido.
endTime Data e hora O momento em que a tarefa parou de rodar mais recentemente antes de ser reenfileirada. Se a tarefa não tivesse começado, esse campo poderia ser omitido.
exitCode Int32 O código de saída da execução da tarefa mais recente, quando o Batch tem uma para reportar. Caso contrário, esse campo é omitido.
retryCount Int32 O número de vezes que o serviço do Lote repetiu a tarefa. A tarefa é retentada se sair com um código de saída diferente de zero, até o número máximo especificado de tentativas de tarefas.
requeueCount Int32 O número de vezes que o serviço Batch reenfileirou a tarefa. Na carga útil emitida atualmente, esse campo reflete o contador de refila atual do serviço para a tarefa.
result String Uma string de resultado definida por serviço para a tarefa quando uma estiver disponível.
schedulingError Tipo complexo Contém informações detalhadas sobre o erro relatado, caso haja disponível.

schedulingError

Nome do elemento Tipo Notes
category String A categoria de erro, por exemplo UserError, .
code String O código de erro, por exemplo BadCommandType, .
message String A mensagem de erro.
details Array Uma lista de pares nome-valor que fornece mais detalhes sobre o erro. Se não houver valores de detalhe extras disponíveis, o array fica vazio.

details

Nome do elemento Tipo Notes
name String O nome do detalhe.
value String O valor de detalhe.