Class: FinAppsCore::Middleware::CustomLogger

Inherits:
Faraday::Response::Middleware
  • Object
show all
Extended by:
Forwardable
Includes:
Utils::ParameterFilter
Defined in:
lib/finapps_core/middleware/response/custom_logger.rb

Constant Summary collapse

DEFAULT_OPTIONS =
{bodies: false}.freeze

Constants included from Utils::ParameterFilter

Utils::ParameterFilter::PROTECTED_KEYS

Instance Method Summary collapse

Methods included from Utils::ParameterFilter

#skip_sensitive_data

Constructor Details

#initialize(app, logger = nil, options = {}) ⇒ CustomLogger

Returns a new instance of CustomLogger.



13
14
15
16
17
# File 'lib/finapps_core/middleware/response/custom_logger.rb', line 13

def initialize(app, logger=nil, options={})
  super(app)
  @logger = logger || new_logger
  @options = DEFAULT_OPTIONS.merge(options)
end

Instance Method Details

#call(env) ⇒ Object



21
22
23
24
25
# File 'lib/finapps_core/middleware/response/custom_logger.rb', line 21

def call(env)
  debug "#{self.class.name}##{__method__} => URL: #{env.method.upcase} #{env.url}"
  debug "#{self.class.name}##{__method__} => Request Headers: #{dump env.request_headers}"
  super
end

#on_complete(env) ⇒ Object



27
28
29
30
# File 'lib/finapps_core/middleware/response/custom_logger.rb', line 27

def on_complete(env)
  debug "#{self.class.name}##{__method__} => Response Headers: #{dump env.response_headers}"
  debug "#{self.class.name}##{__method__} => Response Body: #{dump env.body}" if env.body
end