Module: Sidekiq::Rescue
- Extended by:
- Forwardable
- Defined in:
- lib/sidekiq/rescue.rb,
lib/sidekiq/rescue/dsl.rb,
lib/sidekiq/rescue/config.rb,
lib/sidekiq/rescue/version.rb,
lib/sidekiq/rescue/rspec/matchers.rb,
lib/sidekiq/rescue/server_middleware.rb
Overview
Sidekiq::Rescue is a Sidekiq plugin which allows you to easily handle exceptions thrown by your jobs.
To use Sidekiq::Rescue, you need to include Sidekiq::Rescue::Dsl module in your job class and use the sidekiq_rescue class method to define exception handlers.
class MyJob
include Sidekiq::Job
include Sidekiq::Rescue::Dsl
sidekiq_rescue NetworkError, delay: 60, limit: 10
def perform
# ...
end
end
Also it needs to be registered in Sidekiq server middleware chain:
Sidekiq.configure_server do |config|
config.server_middleware do |chain|
chain.add Sidekiq::Rescue::ServerMiddleware
...
Defined Under Namespace
Modules: Dsl, RSpec Classes: Config, ServerMiddleware
Constant Summary collapse
- DELAY_STRATEGIES =
%i[polynomially_longer exponentially_longer].freeze
- DSL =
Deprecated.
Alias for Dsl; TODO: remove in 1.0.0
Dsl- VERSION =
"0.7.0"
Class Attribute Summary collapse
-
.config ⇒ Sidekiq::Rescue::Config
readonly
The configuration object.
Class Method Summary collapse
-
.configure {|config| ... } ⇒ void
Configures Sidekiq::Rescue.
Class Attribute Details
.config ⇒ Sidekiq::Rescue::Config (readonly)
Returns The configuration object.
37 |
# File 'lib/sidekiq/rescue.rb', line 37 def_delegators :config, :logger |
Class Method Details
.configure {|config| ... } ⇒ void
This method returns an undefined value.
Configures Sidekiq::Rescue
51 52 53 54 55 56 57 |
# File 'lib/sidekiq/rescue.rb', line 51 def configure @mutex.synchronize do config = @config.dup yield(config) @config = config.freeze end end |