Module: Sidekiq::Haron

Defined in:
lib/sidekiq/haron.rb,
lib/sidekiq/haron/storage.rb,
lib/sidekiq/haron/version.rb,
lib/sidekiq/haron/formatter.rb,
lib/sidekiq/haron/job_logger.rb,
lib/sidekiq/haron/transmitter.rb,
lib/sidekiq/haron/redis_converts.rb,
lib/sidekiq/haron/exception_logger.rb,
lib/sidekiq/haron/client_middleware.rb,
lib/sidekiq/haron/server_middleware.rb

Defined Under Namespace

Modules: Storage Classes: ClientMiddleware, ExceptionLogger, Formatter, JobLogger, ServerMiddleware, Transmitter

Constant Summary collapse

VERSION =
"0.2.4".freeze

Class Method Summary collapse

Class Method Details

.configure_client_middleware(sidekiq_config) ⇒ Object



52
53
54
55
56
# File 'lib/sidekiq/haron.rb', line 52

def self.configure_client_middleware(sidekiq_config)
  sidekiq_config.client_middleware do |chain|
    chain.add Sidekiq::Haron::ClientMiddleware
  end
end

.configure_server_middleware(sidekiq_config) ⇒ Object



58
59
60
61
62
63
64
65
66
67
# File 'lib/sidekiq/haron.rb', line 58

def self.configure_server_middleware(sidekiq_config)
  sidekiq_config.server_middleware do |chain|
    if Sidekiq.major_version < 5
      chain.insert_after Sidekiq::Middleware::Server::Logging,
        Sidekiq::Haron::ServerMiddleware
    else
      chain.add Sidekiq::Haron::ServerMiddleware
    end
  end
end

.install(transmitter_class, with_tagged_logging: true) ⇒ Object



30
31
32
33
34
35
36
37
38
39
40
# File 'lib/sidekiq/haron.rb', line 30

def self.install transmitter_class, with_tagged_logging: true
  Sidekiq::Haron.transmitter = transmitter_class.new
  set_loggers with_tagged_logging
  Sidekiq.configure_server do |c|
    configure_client_middleware(c)
    configure_server_middleware(c)
  end
  Sidekiq.configure_client do |c|
    configure_client_middleware(c)
  end
end

.set_loggers(with_tagged_logging) ⇒ Object



42
43
44
45
46
47
48
49
50
# File 'lib/sidekiq/haron.rb', line 42

def self.set_loggers with_tagged_logging
  Sidekiq.configure_server do |config|
    config.logger.formatter = Sidekiq::Haron::Formatter.new
    config.logger = ActiveSupport::TaggedLogging.new(Sidekiq.logger) if with_tagged_logging

    config[:job_logger] = Sidekiq::Haron::JobLogger
    config.error_handlers << Sidekiq::Haron::ExceptionLogger.new
  end
end

.transmitterObject



22
23
24
# File 'lib/sidekiq/haron.rb', line 22

def self.transmitter
  @transmitter
end

.transmitter=(v) ⇒ Object



26
27
28
# File 'lib/sidekiq/haron.rb', line 26

def self.transmitter= v
  @transmitter = v
end