Class: Faraday::Response::Logger
- Inherits:
-
Middleware
- Object
- Middleware
- Faraday::Response::Logger
- Defined in:
- lib/faraday/response/logger.rb
Overview
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.
Constant Summary collapse
- DEFAULT_OPTIONS =
{ formatter: Logging::Formatter }.merge(Logging::Formatter::DEFAULT_OPTIONS).freeze
Constants inherited from Middleware
Instance Attribute Summary
Attributes inherited from Middleware
Instance Method Summary collapse
- #call(env) ⇒ Object
-
#initialize(app, logger = nil, options = {}) {|@formatter| ... } ⇒ Logger
constructor
A new instance of Logger.
- #on_complete(env) ⇒ Object
- #on_error(exc) ⇒ Object
Methods inherited from Middleware
#close, default_options, default_options=
Methods included from MiddlewareRegistry
#lookup_middleware, #register_middleware, #registered_middleware, #unregister_middleware
Constructor Details
#initialize(app, logger = nil, options = {}) {|@formatter| ... } ⇒ Logger
Returns a new instance of Logger.
15 16 17 18 19 20 21 |
# File 'lib/faraday/response/logger.rb', line 15 def initialize(app, logger = nil, = {}) super(app, ) logger ||= ::Logger.new($stdout) formatter_class = @options.delete(:formatter) @formatter = formatter_class.new(logger: logger, options: @options) yield @formatter if block_given? end |
Instance Method Details
#call(env) ⇒ Object
23 24 25 26 |
# File 'lib/faraday/response/logger.rb', line 23 def call(env) @formatter.request(env) super end |
#on_complete(env) ⇒ Object
28 29 30 |
# File 'lib/faraday/response/logger.rb', line 28 def on_complete(env) @formatter.response(env) end |
#on_error(exc) ⇒ Object
32 33 34 |
# File 'lib/faraday/response/logger.rb', line 32 def on_error(exc) @formatter.exception(exc) if @formatter.respond_to?(:exception) end |