Evento di completamento attivitàTask complete event

Questo evento viene generato al completamento di un'attività, indipendentemente dal codice di uscita.This event is emitted once a task is completed, regardless of the exit code. Può essere usato per determinare la durata di un'attività, la posizione in cui è stata eseguita e se è stata tentata più volte.This event can be used to determine the duration of a task, where the task ran, and whether it was retried.

L'esempio seguente illustra il corpo di un evento di completamento attività.The following example shows the body of a task complete event.

{
    "jobId": "job-0000000001",
    "id": "task-5",
    "taskType": "User",
    "systemTaskVersion": 0,
    "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": 0,
        "retryCount": 0,
        "requeueCount": 0
    }
}
Nome dell'elementoElement name TipoType NoteNotes
jobIdjobId StringString ID del processo contenente l'attività.The id of the job containing the task.
idid StringString ID dell'attività.The id of the task.
taskTypetaskType StringString Tipo dell'attività.The type of the task. Il valore può essere "JobManager" per indicare che si tratta di un'attività del gestore di processi oppure 'User' per indicare che non si tratta di un'attività del gestore di processi.This can either be 'JobManager' indicating it is a job manager task or 'User' indicating it is not a job manager task. Questo evento non viene generato per le attività di preparazione del processo, le attività di rilascio del processo o le attività di avvio.This event is not emitted for job preparation tasks, job release tasks or start tasks.
systemTaskVersionsystemTaskVersion Int32Int32 Contatore dei tentativi interni di esecuzione di un'attività.This is the internal retry counter on a task. Il servizio Batch può ritentare internamente l'esecuzione di un'attività in funzione di problemi transitori.Internally the Batch service can retry a task to account for transient issues. Questi problemi possono includere errori interni di pianificazione o tentativi di ripristino a seguito di nodi di calcolo in uno stato non valido.These issues can include internal scheduling errors or attempts to recover from compute nodes in a bad state.
nodeInfonodeInfo Tipo complessoComplex Type Contiene informazioni sul nodo di calcolo in cui è stata eseguita l'attività.Contains information about the compute node on which the task ran.
multiInstanceSettingsmultiInstanceSettings Tipo complessoComplex Type Specifica che l'attività è un'attività con istanze multiple che richiede più nodi di calcolo.Specifies that the task is a Multi-Instance Task requiring multiple compute nodes. Per informazioni dettagliate, vedere multiInstanceSettings.See multiInstanceSettings for details.
constraintsconstraints Tipo complessoComplex Type Vincoli di esecuzione che si applicano a questa attività.The execution constraints that apply to this task.
executionInfoexecutionInfo Tipo complessoComplex Type Contiene informazioni sull'esecuzione dell'attività.Contains information about the execution of the task.

nodeInfonodeInfo

Nome dell'elementoElement name TipoType NoteNotes
poolIdpoolId StringString ID del pool in cui viene eseguita l'attività.The id of the pool on which the task ran.
nodeIdnodeId StringString ID del nodo in cui viene eseguita l'attività.The id of the node on which the task ran.

multiInstanceSettingsmultiInstanceSettings

Nome dell'elementoElement name TipoType NoteNotes
numberOfInstancesnumberOfInstances Int32Int32 Numero di nodi di calcolo richiesti dall'attività.The number of compute nodes required by the task.

constraintsconstraints

Nome dell'elementoElement name TipoType NoteNotes
maxTaskRetryCountmaxTaskRetryCount Int32Int32 Numero massimo di tentativi consentiti per l'attività.The maximum number of times the task may be retried. Il servizio Batch ripete un'attività se il relativo codice di uscita è diverso da zero.The Batch service retries a task if its exit code is nonzero.

Si noti che questo valore controlla specificamente il numero di tentativi.Note that this value specifically controls the number of retries. Il servizio Batch eseguirà l'attività una volta e quindi ripeterà l'esecuzione fino al limite di tentativi specificato.The Batch service will try the task once, and may then retry up to this limit. Ad esempio, se il numero massimo di tentativi è 3, il servizio Batch eseguirà l'attività 4 volte, ovvero una iniziale e 3 ulteriori tentativi.For example, if the maximum retry count is 3, Batch tries a task up to 4 times (one initial try and 3 retries).

Se il numero massimo di tentativi è 0, il servizio Batch non eseguirà ulteriori tentativi.If the maximum retry count is 0, the Batch service does not retry tasks.

Se il numero massimo di tentativi è -1, il servizio Batch continuerà a eseguire tentativi senza limiti.If the maximum retry count is -1, the Batch service retries tasks without limit.

Il valore predefinito è 0, ovvero nessun tentativo.The default value is 0 (no retries).

executionInfoexecutionInfo

Nome dell'elementoElement name TipoType NoteNotes
startTimestartTime DateTimeDateTime Data e ora in cui è iniziata l'esecuzione dell'attività.The time at which the task started running. "Running" corrisponde allo stato in esecuzione e pertanto, se l'attività specifica file di risorse o pacchetti dell'applicazione, la data e l'ora di inizio rispecchiano quelle in cui l'attività ne ha iniziato il download o la distribuzione.'Running' corresponds to the running state, so if the task specifies resource files or application packages, then the start time reflects the time at which the task started downloading or deploying these. Se l'attività è stata riavviata o ritentata, la data e l'ora indicate saranno quelle di inizio dell'ultima esecuzione dell'attività.If the task has been restarted or retried, this is the most recent time at which the task started running.
endTimeendTime DateTimeDateTime Data e ora in cui è stata completata l'esecuzione dell'attività.The time at which the task completed.
exitCodeexitCode Int32Int32 Codice di uscita dell'attività.The exit code of the task.
retryCountretryCount Int32Int32 Numero di tentativi di esecuzione dell'attività da parte del servizio Batch.The number of times the task has been retried by the Batch service. L'attività viene ritentata se si conclude con un codice di uscita diverso da zero, fino al limite specificato in MaxTaskRetryCount.The task is retried if it exits with a nonzero exit code, up to the specified MaxTaskRetryCount.
requeueCountrequeueCount Int32Int32 Numero di volte in cui l'attività è stata reinserita nella coda dal servizio Batch a seguito di una richiesta dell'utente.The number of times the task has been requeued by the Batch service as the result of a user request.

Quando si rimuovono nodi da un pool (tramite ridimensionamento o riduzione del pool) o quando il processo viene disabilitato, l'utente può specificare che le attività in esecuzione sui nodi siano reinserite nella coda per l'esecuzione.When the user removes nodes from a pool (by resizing or shrinking the pool) or when the job is being disabled, the user can specify that running tasks on the nodes be requeued for execution. Questo conteggio tiene traccia del numero di volte in cui l'attività è stata reinserita nella coda per questi motivi.This count tracks how many times the task has been requeued for these reasons.