class Sidekiq::Instrumental::Middleware::Base
Shared base code for measuring stats for server and client sidekiq
Attributes
config[R]
Public Class Methods
new(config)
click to toggle source
# File lib/sidekiq/instrumental/middleware/base.rb, line 12 def initialize(config) @config = config end
Public Instance Methods
call(worker_instance, msg, queue, _redis_pool = nil) { || ... }
click to toggle source
# File lib/sidekiq/instrumental/middleware/base.rb, line 16 def call(worker_instance, msg, queue, _redis_pool = nil) start_time = Time.now result = yield elapsed = (Time.now - start_time).to_f return result unless config.enabled? track( ::Sidekiq::Stats.new, worker_instance, ::Sidekiq::Job.new(msg), queue, elapsed ) result end
Protected Instance Methods
build_class_key(klass_name)
click to toggle source
# File lib/sidekiq/instrumental/middleware/base.rb, line 43 def build_class_key(klass_name) key = klass_name.underscore .gsub(/[^\d\w\-_\.]/, '_') .gsub(/\.{2,}/, '.') key.chomp!('.') while key[-1] == '.' key end
gauge(*args)
click to toggle source
# File lib/sidekiq/instrumental/middleware/base.rb, line 39 def gauge(*args) config.I.gauge(*args) end
increment(*args)
click to toggle source
# File lib/sidekiq/instrumental/middleware/base.rb, line 35 def increment(*args) config.I.increment(*args) end