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 wire format, 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")