Parent

Files

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

[Validate]

Generated with the Darkfish Rdoc Generator 2.