class AtomicSidekiq::RecoveredStats
Public Instance Methods
increment!(job)
click to toggle source
# File lib/atomic_sidekiq/recovered_stats.rb, line 3 def increment!(job) increment_by_job!(job["class"]) increment_by_queue!(job["queue"]) end
stats_by_job()
click to toggle source
# File lib/atomic_sidekiq/recovered_stats.rb, line 12 def stats_by_job iterate_stats(job_prefix) end
stats_by_queue()
click to toggle source
# File lib/atomic_sidekiq/recovered_stats.rb, line 8 def stats_by_queue iterate_stats(queue_prefix) end
Private Instance Methods
increment_by_job!(job_name)
click to toggle source
# File lib/atomic_sidekiq/recovered_stats.rb, line 36 def increment_by_job!(job_name) Sidekiq.redis { |conn| conn.incr("#{job_prefix}:#{job_name}") } end
increment_by_queue!(queue)
click to toggle source
# File lib/atomic_sidekiq/recovered_stats.rb, line 40 def increment_by_queue!(queue) Sidekiq.redis { |conn| conn.incr("#{queue_prefix}:#{queue}") } end
iterate_keys(prefix)
click to toggle source
# File lib/atomic_sidekiq/recovered_stats.rb, line 25 def iterate_keys(prefix) it = 0 result = [] loop do it, keys = Sidekiq.redis { |conn| conn.scan(it, match: "#{prefix}:*") } result.concat(keys) it = it.to_i return result if it.zero? end end
iterate_stats(prefix)
click to toggle source
# File lib/atomic_sidekiq/recovered_stats.rb, line 18 def iterate_stats(prefix) iterate_keys(prefix).map do |key| value = Sidekiq.redis { |conn| conn.get(key) } [key.gsub(Regexp.new("#{prefix}:"), ""), value] end.to_h end
job_prefix()
click to toggle source
# File lib/atomic_sidekiq/recovered_stats.rb, line 52 def job_prefix "#{prefix}:job" end
prefix()
click to toggle source
# File lib/atomic_sidekiq/recovered_stats.rb, line 44 def prefix "atomic_sidekiq" end
queue_prefix()
click to toggle source
# File lib/atomic_sidekiq/recovered_stats.rb, line 48 def queue_prefix "#{prefix}:queue" end