Documentation
¶
Index ¶
- func DecorrelatedJitter(baseDelay, maxDelay, prevDelay time.Duration) time.Duration
- func EqualJitter(baseDelay, maxDelay time.Duration, attempt int) time.Duration
- func FullJitter(baseDelay, maxDelay time.Duration, attempt int) time.Duration
- func IsPermanent(err error) bool
- func IsRetryable(err error) bool
- func LoggingMiddleware(logger zerolog.Logger) worker.Middleware
- func MetricsMiddleware(collector MetricsCollector) worker.Middleware
- func Permanent(err error) error
- func RecoveryMiddleware(logger zerolog.Logger) worker.Middleware
- func Retry(err error) error
- func TimeoutMiddleware(defaultTimeout time.Duration) worker.Middleware
- type BackoffConfig
- type BackoffStrategy
- type MetricsCollector
- type PanicError
- type PermanentError
- type RetryableError
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func DecorrelatedJitter ¶
func IsPermanent ¶
func IsRetryable ¶
func LoggingMiddleware ¶
func LoggingMiddleware(logger zerolog.Logger) worker.Middleware
func MetricsMiddleware ¶
func MetricsMiddleware(collector MetricsCollector) worker.Middleware
func RecoveryMiddleware ¶
func RecoveryMiddleware(logger zerolog.Logger) worker.Middleware
func TimeoutMiddleware ¶
func TimeoutMiddleware(defaultTimeout time.Duration) worker.Middleware
Types ¶
type BackoffConfig ¶
type BackoffConfig struct {
Strategy BackoffStrategy
BaseDelay time.Duration
MaxDelay time.Duration
JitterFactor float64
Multiplier float64
}
func DefaultBackoffConfig ¶
func DefaultBackoffConfig() BackoffConfig
func (BackoffConfig) CalculateDelay ¶
func (c BackoffConfig) CalculateDelay(attempt int) time.Duration
type BackoffStrategy ¶
type BackoffStrategy int
const ( BackoffConstant BackoffStrategy = iota BackoffLinear BackoffExponential )
type MetricsCollector ¶
type PanicError ¶
type PanicError struct {
Value interface{}
}
func (*PanicError) Error ¶
func (e *PanicError) Error() string
type PermanentError ¶
type PermanentError struct {
Err error
}
func (*PermanentError) Error ¶
func (e *PermanentError) Error() string
func (*PermanentError) Unwrap ¶
func (e *PermanentError) Unwrap() error
type RetryableError ¶
type RetryableError struct {
Err error
}
func (*RetryableError) Error ¶
func (e *RetryableError) Error() string
func (*RetryableError) Unwrap ¶
func (e *RetryableError) Unwrap() error
Click to show internal directories.
Click to hide internal directories.