Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Backoff ¶
type Backoff struct {
// contains filtered or unexported fields
}
Backoff implements exponential backoff with randomized wait times
func New ¶
func New(ctx context.Context, cfg BackoffConfig) *Backoff
New creates a Backoff object. Pass a Context that can also terminate the operation.
func (*Backoff) Err ¶
Err returns the reason for terminating the backoff, or nil if it didn't terminate
func (*Backoff) NumRetries ¶
NumRetries returns the number of retries so far
type BackoffConfig ¶
type BackoffConfig struct { MinBackoff time.Duration `yaml:"min_period"` // start backoff at this level MaxBackoff time.Duration `yaml:"max_period"` // increase exponentially to this level MaxRetries int `yaml:"max_retries"` // give up after this many; zero means infinite retries }
BackoffConfig configures a Backoff
func (*BackoffConfig) RegisterFlags ¶
func (cfg *BackoffConfig) RegisterFlags(prefix string, f *flag.FlagSet)
RegisterFlags for BackoffConfig.
Click to show internal directories.
Click to hide internal directories.