class FlexCommerceApi::JsonApiClientExtension::LoggingMiddleware

Attributes

logger[RW]
request_id[RW]

Public Class Methods

new(*args) click to toggle source
Calls superclass method
# File lib/flex_commerce_api/json_api_client_extension/logging_middleware.rb, line 7
def initialize(*args)
  super
  self.request_id = 0
  self.logger = FlexCommerceApi.logger
end

Public Instance Methods

call(env) click to toggle source
# File lib/flex_commerce_api/json_api_client_extension/logging_middleware.rb, line 14
def call(env)
  self.request_id += 1
  @app.call(env).on_complete do |response_env|
    logger.debug("FlexApi::Request  id #{request_id} #{env.method.to_s.upcase} #{env.url} started at #{Time.now}")
    logger.debug("\t >>> #{env[:request_body]}") unless  env[:request_body].nil? || env[:request_body].empty?
    logger.debug("\t <<< (#{env[:status]}) #{env.body}")
  end
end