A Log Subscriber for Faraday clients
Ruby
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
bin
lib
test
.gitignore
.rubocop.yml
.travis.yml
Gemfile
LICENSE
README.md
Rakefile
faraday-log-subscriber.gemspec

README.md

Faraday Log Subscriber

A ActiveSupport::LogSubscriber to log HTTP requests made by a Faraday client instance.

Installation

Add it to your Gemfile:

gem 'faraday-log-subscriber'

Usage

You have to use the :instrumentation middleware from faraday_middleware to instrument your requests.

client = Faraday.new('https://api.github.com') do |builder|
  builder.use :instrumentation
  builder.adapter :net_http
end

client.get('repos/rails/rails')
# 'Faraday GET [200] (1026.9ms) https://api.github.com/repos/rails/rails'

faraday-http-cache integration

If you use the faraday-http-cache gem, an extra line will be logged regarding the cache status of the requested URL:

client = Faraday.new('https://api.github.com') do |builder|
  builder.use :instrumentation
  builder.use :http_cache, instrumenter: ActiveSupport::Notifications
  builder.adapter :net_http
end

client.get('repos/rails/rails')
client.get('repos/rails/rails')
# Faraday HTTP Cache [fresh] https://api.github.com/repos/rails/rails
# Faraday GET [200] (1.7ms) https://api.github.com/repos/rails/rails

License

Copyright (c) 2015 Plataformatec. See LICENSE file.