You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

43 lines
1.0 KiB

  1. # frozen_string_literal: true
  2. namespace = ENV.fetch('REDIS_NAMESPACE') { nil }
  3. redis_params = { url: ENV['REDIS_URL'], driver: :hiredis }
  4. if namespace
  5. redis_params[:namespace] = namespace
  6. end
  7. Sidekiq.configure_server do |config|
  8. config.redis = redis_params
  9. config.server_middleware do |chain|
  10. chain.add SidekiqErrorHandler
  11. end
  12. config.server_middleware do |chain|
  13. chain.add SidekiqUniqueJobs::Middleware::Server
  14. end
  15. config.client_middleware do |chain|
  16. chain.add SidekiqUniqueJobs::Middleware::Client
  17. end
  18. SidekiqUniqueJobs::Server.configure(config)
  19. end
  20. Sidekiq.configure_client do |config|
  21. config.redis = redis_params
  22. config.client_middleware do |chain|
  23. chain.add SidekiqUniqueJobs::Middleware::Client
  24. end
  25. end
  26. Sidekiq.logger.level = ::Logger.const_get(ENV.fetch('RAILS_LOG_LEVEL', 'info').upcase.to_s)
  27. SidekiqUniqueJobs.configure do |config|
  28. config.reaper = :ruby
  29. config.reaper_count = 1000
  30. config.reaper_interval = 600
  31. config.reaper_timeout = 150
  32. end