module Sidekiq::ExpectedFailures

Constants

VERSION

Public Class Methods

clear_all() click to toggle source
# File lib/sidekiq/expected_failures.rb, line 27
def self.clear_all
  clear(dates.keys)
end
clear_counters() click to toggle source
# File lib/sidekiq/expected_failures.rb, line 36
def self.clear_counters
  Sidekiq.redis { |r| r.del("expected:count") }
end
clear_old(days_ago = 1) click to toggle source
# File lib/sidekiq/expected_failures.rb, line 31
def self.clear_old(days_ago = 1)
  range = dates.keys.delete_if { |d| Date.parse(d) > Date.today.prev_day(days_ago) }
  clear(range)
end
counters() click to toggle source
# File lib/sidekiq/expected_failures.rb, line 23
def self.counters
  Sidekiq.redis { |r| r.hgetall("expected:count") }
end
dates() click to toggle source
# File lib/sidekiq/expected_failures.rb, line 15
def self.dates
  Sidekiq.redis do |c|
    c.smembers "expected:dates"
  end.sort.reverse.each_with_object({}) do |d, hash|
    hash[d] = Sidekiq.redis { |c| c.llen("expected:#{d}") }
  end
end

Private Class Methods

clear(dates) click to toggle source
# File lib/sidekiq/expected_failures.rb, line 42
def self.clear(dates)
  dates.each do |date|
    Sidekiq.redis do |c|
      c.multi do |m|
        m.srem("expected:dates", date)
        m.del("expected:#{date}")
      end
    end
  end
end