class Sidekiq::Stats::Queues

Public Instance Methods

lengths() click to toggle source
# File lib/sidekiq/api.rb, line 146
def lengths
  Sidekiq.redis do |conn|
    queues = conn.sscan_each("queues").to_a

    lengths = conn.pipelined {
      queues.each do |queue|
        conn.llen("queue:#{queue}")
      end
    }

    array_of_arrays = queues.zip(lengths).sort_by { |_, size| -size }
    array_of_arrays.to_h
  end
end