Sha256: 8555ca6d5c23ccefa5c131fd60dfe3a379394c7710ca061f1bfb6f77b56526af
Contents?: true
Size: 874 Bytes
Versions: 2
Compression:
Stored size: 874 Bytes
Contents
require 'forwardable' module MarketoApi class Middleware::Logger < Faraday::Response::Middleware extend Forwardable def initialize(app, logger, options) super(app) @options = options @logger = logger || begin require 'logger' ::Logger.new(STDOUT) end end def_delegators :@logger, :debug, :info, :warn, :error, :fatal def call(env) debug('request') do dump url: env[:url].to_s, method: env[:method], headers: env[:request_headers], body: env[:body] end super end def on_complete(env) debug('response') do dump status: env[:status].to_s, headers: env[:response_headers], body: env[:body] end end def dump(hash) "\n" + hash.map { |k, v| " #{k}: #{v.inspect}" }.join("\n") end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
marketo_api-0.1.1.pre.alpha | lib/marketo_api/middleware/logger.rb |
marketo_api-0.0.7.pre.alpha | lib/marketo_api/middleware/logger.rb |