@radzor/retry-handler
Retry failed operations with configurable backoff strategies including exponential, linear, and jitter. Tracks attempt history and provides detailed statistics on retry behaviour.
Install
View source on GitHub →Inputs
| Name | Type | Default | Description |
|---|---|---|---|
| maxAttempts | number | 3 | Maximum number of retry attempts (including the initial call). |
| strategy | 'exponential' | 'linear' | 'fixed' | exponential | Backoff strategy to use between retries. |
| baseDelay | number | 1000 | Base delay in milliseconds before the first retry. |
| maxDelay | number | 30000 | Maximum delay cap in milliseconds. |
| jitter | boolean | true | Add random jitter to the delay to prevent thundering herd. |
| retryOn | (error: Error) => boolean | — | Optional predicate to decide whether an error is retryable. |