class Cloudscopes::RedisClient
Public Class Methods
new(host,port)
click to toggle source
# File lib/cloudscopes/redis.rb, line 5 def initialize(host,port) @redis = Redis.new(host: host, port: port) end
Public Instance Methods
list_size(*keys)
click to toggle source
# File lib/cloudscopes/redis.rb, line 16 def list_size(*keys) keys = [ keys ] unless keys.is_a? Array keys.collect do |key| @redis.llen("#{key}") end.reduce(0,:+) end
resque_size(*keys)
click to toggle source
# File lib/cloudscopes/redis.rb, line 9 def resque_size(*keys) keys = [ keys ] unless keys.is_a? Array keys.collect do |key| @redis.llen("resque:queue:#{key}") end.reduce(0,:+) end
resque_workers(queue, activity = nil)
click to toggle source
# File lib/cloudscopes/redis.rb, line 23 def resque_workers(queue, activity = nil) case activity when :active @redis.keys("resque:worker:*:#{queue}").count when :inactive resque_workers(queue, :available) - resque_workers(queue, :active) when :usage if resque_workers(queue) > 0 resque_workers(queue, :active).to_f / resque_workers(queue) else 0 end else @redis.keys("resque:worker:*:#{queue}:started").count end end
resques(pattern)
click to toggle source
# File lib/cloudscopes/redis.rb, line 40 def resques(pattern) @redis.smembers("resque:queues").grep(pattern) end