Honeycomb.io (Tracing)
Introduction
Honeycomb is a hosted service for debugging your software in production. Capture traces or individual events, then speedily slice and dice your data to uncover patterns, find outliers, and understand historical trends.
Honeycomb Tracing offers an unparalleled ability to run high-level queries in order to identify which traces are worth investigating, before digging deep into the details of an individual exemplar trace. Easily go from insights on your application from a bird’s eye view, to a classic waterfall view of a specific trace, and back. For a walkthrough of this flow in action, visit our blog.
Its OpenCensus Go exporter is available at https://github.com/honeycombio/opencensus-exporter
Creating the exporter
To create the exporter, we’ll need to:
- Create an exporter in code
- Pass in your Honeycomb API key, found on your Honeycomb Team Settings page. (Sign up for free if you haven’t already!)
- Pass in your Honeycomb dataset name
package main
import (
honeycomb "github.com/honeycombio/opencensus-exporter/honeycomb"
"go.opencensus.io/trace"
)
func main() {
exporter := honeycomb.NewExporter("YOUR-HONEYCOMB-WRITE-KEY", "YOUR-DATASET-NAME")
defer exporter.Close()
sampleFraction := 0.5
trace.ApplyConfig(trace.Config{DefaultSampler: trace.ProbabilitySampler(sampleFraction)})
// If you use the Open Census Probability Sampler, be sure to pass that sampleFraction to the exporter
// so that Honeycomb can pick it up and make sure we handle your sampling properly.
exporter.SampleFraction = sampleFraction
trace.RegisterExporter(exporter)
// ...
}
Viewing your traces
Please visit the Honeycomb UI to view your traces.
Learn more about exploring your trace data here, or play around with some of our data here.
Project link
You can find out more about Honeycomb at https://www.honeycomb.io/