class CouchRest::Logger
Public Class Methods
log()
click to toggle source
# File lib/couchrest/middlewares/logger.rb, line 20 def self.log Thread.current["couchrest.logger"] ||= {:queries => []} end
new(app, db=nil)
click to toggle source
# File lib/couchrest/middlewares/logger.rb, line 24 def initialize(app, db=nil) @app = app @db = db end
record(log_info)
click to toggle source
# File lib/couchrest/middlewares/logger.rb, line 29 def self.record(log_info) log[:queries] << log_info end
Public Instance Methods
call(env)
click to toggle source
# File lib/couchrest/middlewares/logger.rb, line 41 def call(env) reset_log log['started_at'] = Time.now log['env'] = env log['url'] = 'http://' + env['HTTP_HOST'] + env['REQUEST_URI'] response = @app.call(env) log['ended_at'] = Time.now log['duration'] = log['ended_at'] - log['started_at'] # let's report the log in a different thread so we don't slow down the app @db ? Thread.new(@db, log){|db, rlog| db.save_doc(rlog);} : p(log.inspect) response end
log()
click to toggle source
# File lib/couchrest/middlewares/logger.rb, line 33 def log Thread.current["couchrest.logger"] ||= {:queries => []} end
reset_log()
click to toggle source
# File lib/couchrest/middlewares/logger.rb, line 37 def reset_log Thread.current["couchrest.logger"] = nil end