Sha256: 9343604bcbee65d5a7c835032ab222573bf13b10a855e1068bccebc19a51106e
Contents?: true
Size: 1.27 KB
Versions: 1
Compression:
Stored size: 1.27 KB
Contents
module ResqueSqs # The stat subsystem. Used to keep track of integer counts. # # Get a stat: Stat[name] # Incr a stat: Stat.incr(name) # Decr a stat: Stat.decr(name) # Kill a stat: Stat.clear(name) module Stat extend self # Direct access to the Redis instance. def redis ResqueSqs.redis end # Returns the int value of a stat, given a string stat name. def get(stat) redis.get("stat:#{stat}").to_i end # Alias of `get` def [](stat) get(stat) end # For a string stat name, increments the stat by one. # # Can optionally accept a second int parameter. The stat is then # incremented by that amount. def incr(stat, by = 1) redis.incrby("stat:#{stat}", by) end # Increments a stat by one. def <<(stat) incr stat end # For a string stat name, decrements the stat by one. # # Can optionally accept a second int parameter. The stat is then # decremented by that amount. def decr(stat, by = 1) redis.decrby("stat:#{stat}", by) end # Decrements a stat by one. def >>(stat) decr stat end # Removes a stat from Redis, effectively setting it to 0. def clear(stat) redis.del("stat:#{stat}") end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
resque_sqs-1.25.2 | lib/resque_sqs/stat.rb |