class Faraday::Response::Logger

Logger is a middleware that logs internal events in the HTTP request lifecycle to a given Logger object. By default, this logs to STDOUT. See Faraday::Logging::Formatter to see specifically what is logged.

Public Class Methods

Calls superclass method Faraday::Middleware::new
# File lib/faraday/response/logger.rb, line 13
def initialize(app, logger = nil, options = {})
  super(app)
  logger ||= ::Logger.new($stdout)
  formatter_class = options.delete(:formatter) || Logging::Formatter
  @formatter = formatter_class.new(logger: logger, options: options)
  yield @formatter if block_given?
end

Public Instance Methods

Calls superclass method Faraday::Middleware#call
# File lib/faraday/response/logger.rb, line 21
def call(env)
  @formatter.request(env)
  super
end
# File lib/faraday/response/logger.rb, line 26
def on_complete(env)
  @formatter.response(env)
end
# File lib/faraday/response/logger.rb, line 30
def on_error(exc)
  @formatter.exception(exc) if @formatter.respond_to?(:exception)
end