Sha256: 70020eff1c980296d67e420d376b24e43997d5c6b234382238ae7bb5e7aa2943
Contents?: true
Size: 1022 Bytes
Versions: 9
Compression:
Stored size: 1022 Bytes
Contents
module Sidekiq module Middleware module Server class Logging def call(worker, item, queue) Sidekiq::Logging.with_context(log_context(worker, item)) do begin start = Time.now logger.info { "start" } yield logger.info { "done: #{elapsed(start)} sec" } rescue Exception logger.info { "fail: #{elapsed(start)} sec" } raise end end end private # If we're using a wrapper class, like ActiveJob, use the "wrapped" # attribute to expose the underlying thing. def log_context(worker, item) klass = item['wrapped'.freeze] || worker.class.to_s "#{klass} JID-#{item['jid'.freeze]}#{" BID-#{item['bid'.freeze]}" if item['bid'.freeze]}" end def elapsed(start) (Time.now - start).round(3) end def logger Sidekiq.logger end end end end end
Version data entries
9 entries across 9 versions & 1 rubygems