Skip to content

ema / ema / RetryConfig

Class: RetryConfig

Defined in: packages/ema/src/retry.ts:13

Elegant retry mechanism module

Provides decorators and utility functions to support retry logic for async functions.

Features:

  • Supports exponential backoff strategy
  • Configurable retry count and intervals
  • Supports specifying retryable exception types
  • Detailed logging
  • Fully decoupled, non-invasive to business code

Constructors

Constructor

ts
new RetryConfig(
   enabled, 
   max_retries, 
   initial_delay, 
   max_delay, 
   exponential_base): RetryConfig;

Defined in: packages/ema/src/retry.ts:14

Parameters

enabled

boolean = true

Whether to enable retry mechanism

max_retries

number = 3

Maximum number of retries

initial_delay

number = 1.0

Initial delay time (seconds)

max_delay

number = 60.0

Maximum delay time (seconds)

exponential_base

number = 2.0

Exponential backoff base

Returns

RetryConfig

Properties

enabled

ts
readonly enabled: boolean = true;

Defined in: packages/ema/src/retry.ts:18

Whether to enable retry mechanism


exponential_base

ts
readonly exponential_base: number = 2.0;

Defined in: packages/ema/src/retry.ts:34

Exponential backoff base


initial_delay

ts
readonly initial_delay: number = 1.0;

Defined in: packages/ema/src/retry.ts:26

Initial delay time (seconds)


max_delay

ts
readonly max_delay: number = 60.0;

Defined in: packages/ema/src/retry.ts:30

Maximum delay time (seconds)


max_retries

ts
readonly max_retries: number = 3;

Defined in: packages/ema/src/retry.ts:22

Maximum number of retries