Undertaker
Easy exponential back off.
Undertaker will run a block of code and if it raises an exception it will retry.
Installation
Add this line to your application's Gemfile:
gem 'undertaker-rails'
And then execute:
$ bundle
Or install it yourself as:
$ gem install undertaker-rails
Usage
Retry any StandardError
undertaker = Undertaker.new(limit: 5, logger: Rails.logger)
undertaker.execute do
something...
end
With a custom retry condition
undertaker = Undertaker.new
undertaker.retry_when { |exception| exception == SomeError }
undertaker.execute do
something...
end
Contributing
- Fork it ( http://github.com//undertaker/fork )
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request