

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Ritentativi automatici del lavoro
<a name="job_retries"></a>

Puoi applicare ai tuoi processi e alle definizioni di processo una strategia di nuovi tentativi che consenta la ripetizione automatica dei processi in caso di esito negativo. I possibili scenari di errore includono quanto segue:
+ Un codice di uscita diverso da zero ricevuto dal processo di un container
+ Errore o chiusura dell'istanza Amazon EC2
+ Errore o AWS interruzione del servizio interno

Quando un lavoro viene inviato a una coda di lavoro e inserito nello `RUNNING` stato considerato un tentativo. Per impostazione predefinita, a ogni processo viene assegnato un tentativo per passare allo stato `SUCCEEDED` o `FAILED`. Tuttavia, sia i flussi di lavoro di definizione del lavoro che quelli di invio del lavoro possono essere utilizzati per specificare una strategia di nuovo tentativo con un numero compreso tra 1 e 10 tentativi. Se OnExit [ viene specificata la ](job_definition_parameters.md#retryStrategy-evaluateOnExit) valutazione, può contenere fino a 5 strategie di ripetizione dei tentativi. Se OnExit [ si specifica la ](https://docs.aws.amazon.com/batch/latest/APIReference/API_EvaluateOnExit.html) valutazione, ma nessuna delle strategie di riprova corrisponde, il processo viene ritentato. Per i lavori che non corrispondono all'uscita, aggiungi un'ultima voce che esce per qualsiasi motivo. Ad esempio, questo `evaluateOnExit` oggetto ha due voci con azioni di `RETRY` e una voce finale con un'azione di`EXIT`.

```
"evaluateOnExit": [
    {
        "action": "RETRY",
        "onReason": "AGENT"
    },
    {
        "action": "RETRY",
        "onStatusReason": "Task failed to start"
    },
    {
        "action": "EXIT",
        "onReason": "*"
    }
]
```

In fase di runtime, la variabile di ambiente `AWS_BATCH_JOB_ATTEMPT` è impostata sul numero del tentativo corrispondente del processo del container. Il primo tentativo è numerato e `1` i tentativi successivi sono in ordine crescente (ad esempio, 2, 3, 4).

Ad esempio, supponiamo che un tentativo di lavoro fallisca per qualsiasi motivo e che il numero di tentativi specificato nella configurazione dei nuovi tentativi sia maggiore del numero. `AWS_BATCH_JOB_ATTEMPT` Quindi, il lavoro viene riportato nello `RUNNABLE` stato. Per ulteriori informazioni, consulta [Stati del lavoro](job_states.md).

**Nota**  
I lavori annullati o terminati non vengono ritentati. Inoltre, i lavori che falliscono a causa di una definizione di processo non valida non vengono ritentati.

Per ulteriori informazioni [Riprova la strategia](job_definition_parameters.md#retryStrategy)[Creare una definizione di processo a nodo singolo](create-job-definition.md), vedere [Tutorial: invia un lavoro](submit_job.md) e Codici di errore delle attività [ interrotte. ](https://docs.aws.amazon.com/AmazonECS/latest/userguide/stopped-task-error-codes.html)