0.0
No commit activity in last 3 years
No release in over 3 years
Faraday middleware to generate Zipkin tracing headers.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
 Dependencies

Development

~> 1.6
~> 10.0
~> 3.0

Runtime

>= 0.8
~> 0.9.0
 Project Readme

Deprecated

This gem is deprecated. The code of this middleware has been moved into the Zipkin-tracer gem. Please use the FaradayHandler in the zipkin-tracer gem to get the most up-to-date code.

The README below is left only as reference for users of the old code.


Faraday::Zipkin

Build Status

Faraday middleware to generate Zipkin tracing headers.

For more information about Zipkin, go to http://twitter.github.io/zipkin http://github.com/twitter/zipkin

This gem implements the client side described at http://twitter.github.io/zipkin/instrument.html

Note that you should also be using the zipkin-tracer Rack middleware to generate trace IDs around your requests: https://github.com/twitter/zipkin/tree/master/zipkin-gems/zipkin-tracer

Zipkin tracing headers for HTTP APIs are documented at https://github.com/twitter/zipkin/blob/master/doc/collector-api.md

Usage

Include Faraday::Zipkin::TraceHeaders as a Faraday middleware:

require 'faraday'
require 'faraday-zipkin'

conn = Faraday.new(:url => 'http://localhost:9292/') do |faraday|
  # 'service_name' is optional (but recommended)
  faraday.use Faraday::Zipkin::TraceHeaders, 'service_name'
  # default Faraday stack
  faraday.request :url_encoded
  faraday.adapter Faraday.default_adapter
end

Note that supplying the service name for the destination service is optional; the tracing will default to a service name derived from the first section of the destination URL (e.g. 'service.example.com' => 'service').

Contributing

  1. Fork it ( https://github.com/openzipkin/faraday-zipkin/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request