With this library, you can inject log into Redis queue and process it this worker
Install it yourself as:
$ gem install redis_logger_device
require 'logger'
require 'redis_logger_device'
dev = RedisLoggerDevice::Base.new
logger = Logger.new(dev)
logger.info("AAAAAaaaaaahhhhh")
logger.close
require 'logger'
require 'redis_logger_device'
include RedisLoggerDevice
class SimpleLogWorker < LogWorker
def process_queue!
loop do
begin
@logger.info("LogWorker fetching (#{@queue_name})...")
key, val = @redis.brpop @queue_name
@logger.info("LogWorker rocess key: #{key}; val: #{val}")
#your code : val = log entry
rescue SignalException => e
raise e
rescue Exception => e
@logger.fatal "LogWorker error: #{e.message}"
raise e
end
end
end
end
worker_logger = Logger.new(STDOUT)
worker = SimpleLogWorker.new(worker_logger)
worker.process_queue!
worker_looger.close
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Added some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request