Retry
Reessaie automatiquement une operation en cas d'echec, avec un delai configurable entre les tentatives (backoff).
Parametres
| Parametre | Type | Requis | Variable | Description |
|---|---|---|---|---|
maxAttempts | nombre | Non | Non | Nombre maximum de tentatives avant de considerer le bloc comme echoue. (Defaut: 3, min 1, max 10) |
backoffType | choix (fixed, exponential, linear) | Non | Non | Strategie de delai entre les tentatives : fixe, exponentiel (x2 a chaque echec), ou lineaire (increments constants). (Defaut: "fixed") |
initialDelayMs | nombre | Non | Non | Delai initial entre les tentatives en millisecondes. (Defaut: 1000, min 100) |
maxDelayMs | nombre | Non | Non | Delai maximum entre les tentatives en millisecondes (pour les strategies exponential et linear). |
retryOn | liste | Non | Non | Conditions declenchant un retry : erreur, timeout, ou condition personnalisee. |
retryCondition | liste | Non | Non | Regles de condition personnalisees pour decider si un retry doit etre effectue. |
attemptVariable | texte | Non | Non | Nom de la variable contenant le compteur de tentatives en cours. |
Sortie
Variable de sortie : retryResult
{
"result": "...",
"attempts": 0
}
Exemple
Retenter un appel API jusqu'a 3 fois.
Entree :
{}
Sortie :
{"result": {"data": "success"}, "attempts": 2}
Astuce
{{retryResult.attempts}} indique le nombre de tentatives effectuees. Max 10 tentatives. Le delai entre tentatives est configurable (defaut 1s).