module Sidekiq::CurrentAttributes

Automatically save and load any current attributes in the execution context so context attributes “flow” from Rails actions into any associated jobs. This can be useful for multi-tenancy, i18n locale, timezone, any implicit per-request attribute. See ActiveSupport::CurrentAttributes.

@example

# in your initializer
require "sidekiq/middleware/current_attributes"
Sidekiq::CurrentAttributes.persist(Myapp::Current)

Public Class Methods

persist(klass) click to toggle source
# File lib/sidekiq/middleware/current_attributes.rb, line 42
def self.persist(klass)
  Sidekiq.configure_client do |config|
    config.client_middleware.add Save, klass
  end
  Sidekiq.configure_server do |config|
    config.client_middleware.add Save, klass
    config.server_middleware.add Load, klass
  end
end