1.4.0 • Published 7 years ago

auto-retry v1.4.0

Weekly downloads
559
License
ISC
Repository
github
Last release
7 years ago

auto-retry

npm package

Build Status Coverage Status

Description

Automatically add exponential retry abilities to any function that returns a promise, only rejecting after the retries fail.

Installation

$ npm install auto-retry

Example

const requestPromise = require('request-promise');
const autoRetry = require('auto-retry');

// Construct a new function with automatic retry capabilities
const requestWithRetry = autoRetry(requestPromise);

// Make a request
requestWithRetry('http://www.vimeo.com')
    .then((response) => {
        // Process html as usual
    })
    .catch((error) => {
        // Only called after 3 failed attempts
    });

Documentation

autoRetry(fn, options) ⇒ function

Higher order function that makes any promise-returning-function retryable with a jitter'd exponential backoff.

ParamTypeDescription
fnfunctionFunction to be made retryable.
optionsObjectConfiguration.
options.backoffBaseNumberBase interval for backoff wait time (in ms).
options.logRetriesBoolenLog retry attempts to the console.
options.maxRetriesNumberTotal number of retries.
options.retryCountNumberCurrent retry count.
options.onRetryfunctionFunction to be called after each failed attempt.
// Construct a new function to only retry once
const requestWithRetry = autoRetry(requestPromise, { maxRetries: 1 });


// Set a minimum backoff interval to 2 seconds
const requestWithRetry = autoRetry(requestPromise, { backoffBase: 2000 });
1.4.0

7 years ago

1.3.0

7 years ago

1.1.0

7 years ago

1.0.1

7 years ago

1.0.0

7 years ago

0.0.1

7 years ago