This project is not actively maintained and you should not use it. New issues and pull requests will likely be ignored. OpenTracing has been superseded by OpenTelementry.
The OpenTelemetry Collector can read & write multiple trace formats (including Zipkin and Honeycomb) and is the preferred alternative.
honeycomb-opentracing-proxy
is a drop-in compatible replacement for Zipkin.
If your services are instrumented with OpenTracing and emit span data using
Zipkin's Thrift or JSON formats, then honeycomb-opentracing-proxy
can receive that data
and forward it to the Honeycomb API. Using Honeycomb,
you can explore single traces, and run queries over aggregated trace data.
First, sign up for a free Honeycomb trial account, and grab your write key from your account page.
If you have Go installed, you can clone this repository and build the proxy using the commands below. Alternatively, a Docker image is available. Binary, deb and RPM package downloads will be available soon!
git clone git@github.com:honeycombio/honeycomb-opentracing-proxy \
$GOPATH/src/github.com/honeycombio/honeycomb-opentracing-proxy
go install github.com/honeycombio/honeycomb-opentracing-proxy/...
# Forward spans to a Honeycomb dataset named `traces`, using writekey $WRITEKEY
honeycomb-opentracing-proxy -d traces -k $WRITEKEY
# Forward spans to a downstream "real" Zipkin collector as well
honeycomb-opentracing-proxy --downstream https://myzipkin.example.com:9411
# Write spans to stdout for debugging or local development
honeycomb-opentracing-proxy --debug
If you're using Kubernetes, you can find a sample deployment manifest in the kubernetes/ directory.
If you're instrumenting a complex codebase, and you'd like to send different
types of traces to different Honeycomb datasets, add a honeycomb.dataset
tag to your spans. E.g.
span, ctx := opentracing.StartSpan("myNewSpan")
span.SetTag("honeycomb.dataset", "My Shiny Tracing Dataset")
If your outbound HTTP traffic goes through an internal/corporate proxy server, you might need to specify the HTTPS_PROXY
environment variable when running the OpenTracing proxy:
HTTPS_PROXY=<my proxy address>
Please see our development guide