class G5PromRails::SidekiqTimingMiddleware
Public Class Methods
build_metric(reg)
click to toggle source
# File lib/g5_prom_rails/sidekiq_timing_middleware.rb, line 2 def self.build_metric(reg) reg.histogram( :sidekiq_job_seconds, "job running time in seconds", {}, [ 10, 30, 90, 3.minutes.to_i, 7.minutes.to_i, 12.minutes.to_i, 20.minutes.to_i, 35.minutes.to_i, 60.minutes.to_i, 80.minutes.to_i, 2.hours.to_i, 3.hours.to_i, 5.hours.to_i, 10.hours.to_i, ] ) end
new(options = nil)
click to toggle source
# File lib/g5_prom_rails/sidekiq_timing_middleware.rb, line 26 def initialize(options = nil) @metric = options[:metric] end
Public Instance Methods
call(worker, msg, queue) { || ... }
click to toggle source
# File lib/g5_prom_rails/sidekiq_timing_middleware.rb, line 30 def call(worker, msg, queue) @metric.observe( { job_class: worker.class.name }, Benchmark.realtime { yield } ) end