class Faraday::Response::StubHubCustomLogger
Public Class Methods
new(app, logger = nil, options = {})
click to toggle source
Calls superclass method
# File lib/stub_hub_api/logger.rb, line 7 def initialize(app, logger = nil, options = {}) super(app) @logger = logger || begin require 'logger' ::Logger.new(STDOUT) end @options = options end
Public Instance Methods
call(env)
click to toggle source
Calls superclass method
# File lib/stub_hub_api/logger.rb, line 18 def call(env) if env.method != :get info "#{env.method} #{env.url.to_s}" debug('request') { dump_headers env.request_headers } debug('request') { dump_body(env[:body]) } if env[:body] end super end
on_complete(env)
click to toggle source
# File lib/stub_hub_api/logger.rb, line 27 def on_complete(env) if env.method != :get info('Status') { env.status.to_s } debug('response') { dump_headers env.response_headers } debug('response') { dump_body env[:body] } if env[:body] end end
Private Instance Methods
dump_body(body)
click to toggle source
# File lib/stub_hub_api/logger.rb, line 41 def dump_body(body) if body.respond_to?(:to_str) body.to_str else pretty_inspect(body) end end
dump_headers(headers)
click to toggle source
# File lib/stub_hub_api/logger.rb, line 37 def dump_headers(headers) headers.map { |k, v| "#{k}: #{v.inspect}" }.join("\n") end
pretty_inspect(body)
click to toggle source
# File lib/stub_hub_api/logger.rb, line 49 def pretty_inspect(body) require 'pp' unless body.respond_to?(:pretty_inspect) body.pretty_inspect end