Consulta i connettori supportati per Application Integration.
Strategie di gestione degli errori per le attività
La strategia di gestione degli errori per un'attività specifica l'azione da intraprendere se l'attività non va a buon fine a causa di un errore temporaneo.
Configura le strategie di gestione degli errori
Per configurare una strategia di gestione degli errori per un'attività:
- Fai clic sull'attività esistente nell'editor di integrazione. Viene visualizzato il riquadro di configurazione della tâche.
- Nel riquadro di configurazione dell'attività, espandi la sezione Gestione degli errori. L'immagine seguente mostra la sezione Gestione degli errori:
Nella sezione Gestione degli errori, segui questi passaggi:
- Per aggiungere una nuova norma di errore, fai clic su + Aggiungi norma di errore. Se sono configurati più criteri di errore condizionale, vengono controllati e associati in ordine.
- Nel campo Strategia di ripetizione, seleziona la strategia di gestione degli errori che vuoi utilizzare. Per un elenco delle strategie, consulta Strategie di ripetizione.
- Nel campo Condizione di ripetizione dei tentativi, inserisci la condizione che deve corrispondere all'errore per l'esecuzione di questa strategia di errore. Ad esempio, per un'attività di chiamata endpoint REST, per eseguire la strategia di errore se il codice di errore corrisponde a
404
, inserisci quanto segue: Per informazioni su come aggiungere queste condizioni, consulta Condizioni di ripetizione.$`ErrorInfo.code`$ = 404
- Nella sezione Norma di errore predefinita, aggiungi la norma predefinita che deve essere applicata se non corrisponde nessuna norma di errore condizionale. Il criterio di errore predefinito è facoltativo.
- Nella sezione Raccogli errori, aggiungi il raccogli errori per l'integrazione.
- Per aggiungere una nuova norma di errore, fai clic su + Aggiungi norma di errore. Se sono configurati più criteri di errore condizionale, vengono controllati e associati in ordine.
Per informazioni sui codici di errore e sulla gestione degli errori, consulta Gestione degli errori.
Strategie di nuovo tentativo
Le seguenti tabelle descrivono le diverse strategie di gestione degli errori che puoi utilizzare per un'attività:
Tipo di strategia | Descrizione |
---|---|
Irreversibile | Interrompe l'esecuzione dell'intera integrazione e contrassegna lo stato di esecuzione come Non riuscito. |
Ignora | Ignora l'errore dell'attività. L'integrazione continua a eseguire le attività successive presupponendo che l'attività non riuscita sia Completata. |
Nessuna | Interrompe l'esecuzione dell'attività e contrassegna lo stato dell'integrazione come Non riuscito. Se esiste un percorso alternativo per l'attività finale (attività a foglia), le attività nel percorso alternativo vengono eseguite. Se tutte le attività nel percorso alternativo vengono eseguite correttamente, lo stato dell'integrazione viene contrassegnato come Succeeded (Completato). |
Riavviare l'integrazione con il backoff | Esegue l'intera integrazione dalla prima attività. Tuttavia, l'attività potrebbe non riuscire di nuovo. Per evitare ripetuti errori, specifica l'intervallo di tempo tra i riavvii nel campo Intervallo tra i tentativi (in secondi) e il numero di tentativi di riavvio consentiti nel campo Conteggio dei tentativi massimi. |
Eseguire nuovamente l'attività con backoff esponenziale | Esegue l'integrazione dall'attività non riuscita. Se l'attività non va a buon fine durante un nuovo tentativo, l'intervallo di tempo tra ogni nuovo tentativo aumenta in base alla potenza di 2. Al tempo di backoff viene aggiunto un ritardo di 1-5 secondi.
Ad esempio, se l'intervallo di ripetizione specificato è di 3 secondi, il primo tentativo avviene dopo 3 secondi. Il secondo tentativo viene eseguito dopo 9 secondi, il terzo dopo 81 secondi e così via. Il processo continua fino al raggiungimento del numero massimo di tentativi o al completamento dell'attività, a seconda dell'evento che si verifica per primo. |
Riprova attività con intervallo fisso | Esegue l'integrazione dall'attività non riuscita. Se l'attività non va a buon fine durante un nuovo tentativo, l'intervallo di tempo tra ogni nuovo tentativo rimane costante.
Ad esempio, se l'intervallo di ripetizione specificato è di 3 secondi, le ripetizioni vengono eseguite ogni 3 secondi. Il processo continua fino al raggiungimento del numero massimo di tentativi o al completamento dell'attività, a seconda dell'evento che si verifica per primo. |
Riprova attività con backoff lineare | Esegue l'integrazione dall'attività non riuscita. Se l'attività non va a buon fine durante un nuovo tentativo, l'intervallo di tempo tra ogni nuovo tentativo aumenta in modo lineare. Al tempo di backoff viene aggiunto un ritardo di 1-5 secondi.
Ad esempio, se l'intervallo di ripetizione specificato è di 3 secondi, il primo tentativo avviene dopo 3 secondi. Il secondo tentativo viene eseguito dopo 6 secondi, il terzo dopo 9 secondi e così via. Il processo continua fino al raggiungimento del numero massimo di tentativi o al completamento dell'attività, a seconda dell'evento che si verifica per primo. |
Nuovi tentativi con backoff
Il limite di concorrenza predefinito è impostato su 50 esecuzioni per ogni progetto e regione. Le esecuzioni non riuscite vengono messe in coda e riprovate utilizzando un algoritmo di backoff esponenziale, che aumenta gradualmente il tempo di attesa tra i tentativi fino a 10 volte. Ad esempio:
- Esegui un'integrazione.
- Se la richiesta non va a buon fine, attendi 10 minuti e riprova.
- Se la richiesta non va a buon fine, attendi 20 minuti e riprova.
- Se la richiesta non va a buon fine, attendi 40 minuti e riprova.
- E così via fino a un massimo di 10 tentativi di backoff.
Condizioni per nuovi tentativi
La condizione di nuovo tentativo specifica la condizione che deve corrispondere per l'esecuzione della strategia di gestione degli errori. La tabella seguente descrive gli operatori e le funzioni supportati che puoi utilizzare nella condizione di nuovo tentativo:
Operatori supportati
La seguente tabella descrive gli operatori supportati disponibili per l'utilizzo nelle condizioni di ripetizione.
Operatore | Descrizione | Esempio |
= | Controlla l'uguaglianza tra due valori | $var$ = "value" |
!= | Controlla la disuguaglianza tra due valori | $var$ != "value" |
< | Controlla se un valore è inferiore a un altro valore | 5 < 10 |
<= | Controlla se un valore è minore o uguale a un altro valore | $var$ <= 5 |
> | Controlla se un valore è maggiore di un altro valore | 1 > 0 |
>= | Controlla se un valore è maggiore o uguale a un altro valore | $var$ >= 0 |
: | Controlla se una stringa contiene una sottostringa o se un elenco contiene un valore primitivo specifico. |
|
AND | Controlla due espressioni e restituisce true se entrambe le espressioni hanno un valore booleano true. | $a$ > $b$ AND $b$ < $c$ |
OR | Controlla due espressioni e restituisce true se una delle espressioni restituisce true. | $a$ > $b$ OR $b$ < $c$ |
NOT | Operatore di negazione. Sostituisce il risultato di un'espressione. | NOT($var$ = "value") |
Funzioni supportate
La tabella seguente descrive le funzioni supportate disponibili per l'utilizzo nelle condizioni di nuovo tentativo.
Funzione | Descrizione |
exists(VARIABLE)
|
Controlla se esiste una determinata variabile |
does_not_exist(VARIABLE)
|
Controlla se una determinata variabile non esiste |
is_empty(VARIABLE)
|
Controlla se una determinata variabile è un elenco E se è vuota. Supporta il tipo di variabile array, ad eccezione dell'array JSON. |
is_not_empty(VARIABLE)
|
Controlla se una determinata variabile è un elenco E non è vuota. Supporta il tipo di variabile array, ad eccezione dell'array JSON. |