docbrown/config/initializers/sidekiq.rb
rhymes 36786cf554
Rails 6: enable zeitwerk autoloader (#8766)
* More loading fixes

* Go back to OpenStruct

* Shuffle things around

* Remove obsolete patches and unneeded requires

* Disable config.add_autoload_paths_to_load_path

* Fix pre-require errors

* Config not reloader
2020-06-22 16:27:55 +02:00

22 lines
869 B
Ruby

Rails.application.config.to_prepare do
Dir.glob(Rails.root.join("lib/sidekiq/*.rb")).sort.each do |filename|
require_dependency filename
end
end
Sidekiq.configure_server do |config|
sidekiq_url = ApplicationConfig["REDIS_SIDEKIQ_URL"] || ApplicationConfig["REDIS_URL"]
# On Heroku this configuration is overridden and Sidekiq will point at the redis
# instance given by the ENV variable REDIS_PROVIDER
config.redis = { url: sidekiq_url }
config.server_middleware do |chain|
chain.add Sidekiq::HoneycombMiddleware
end
# This allows us to define custom logic to handle when a worker has exhausted all
# of it's retries. For more details: https://github.com/mperham/sidekiq/wiki/Error-Handling#death-notification
config.death_handlers << lambda do |job, _ex|
Sidekiq::WorkerRetriesExhaustedReporter.report_final_failure(job)
end
end