class Frodo::Middleware::Logger
Public Class Methods
new(app, logger, options)
click to toggle source
Calls superclass method
# File lib/frodo/middleware/logger.rb, line 9 def initialize(app, logger, options) super(app) @options = options @logger = logger || begin require 'logger' ::Logger.new(STDOUT) end end
Public Instance Methods
call(env)
click to toggle source
Calls superclass method
# File lib/frodo/middleware/logger.rb, line 20 def call(env) debug('request') do dump url: env[:url].to_s, method: env[:method], headers: env[:request_headers], body: env[:body] end super end
dump(hash)
click to toggle source
# File lib/frodo/middleware/logger.rb, line 38 def dump(hash) "\n" + hash.map { |k, v| " #{k}: #{v.inspect}" }.join("\n") end
on_complete(env)
click to toggle source
# File lib/frodo/middleware/logger.rb, line 30 def on_complete(env) debug('response') do dump status: env[:status].to_s, headers: env[:response_headers], body: env[:body] end end