The best way to get data into Honeycomb is through one of our auto-instrumenting Beelines, or one of the OpenTelemetry SDKs. Both of them provide out-of-the box support for collecting rich events with distributed tracing.
The getting started instructions explain the broad set of instructions for getting started with Honeycomb; this page shows how to use the Beelines and OpenTelemetry SDKs.
If a system is already instrumented with OpenTelemetry, OpenCensus, Zipkin, or Jaeger, check out our support for open standards with OpenTelemetry.
Depending on your choice of languages, a Honeycomb Beeline or an OpenTelemetry instrumentation may be more appropriate for you.
|Language||Beeline Support||OpenTelemetry Support|
|Go||Go Beeline||Honeycomb Go Exporter|
|Ruby||Ruby Beeline||Proxy through the OpenTelemetry Collector Exporter|
|Python||Python Beeline||OpenTelemetry Python Exporter|
|Java||Java Beeline||Proxy through the OpenTelemetry Collector Exporter|
|NodeJS||NodeJS Beeline||Proxy through the OpenTelemetry Collector Exporter|
|C#||Not available||Community Honeycomb OpenTelemetry Exporter|
Honeycomb has an endpoint that accepts raw json events over http. To send events directly as JSON objects, use the events API.
We also have native SDKs, called “LibHoney”, which provide idiomatic methods for sending events to Honeycomb; they do not, however, contain native support for distributed traces or automatic instrumentation.
While infrastructure usually can’t provide tracing data, its still possible to get rich data into Honeycomb. If you have something in your infrastructure, we have probably already thought about the best way to get events from it into Honeycomb. Check out these integrations, including curling data directly in, tailing a logfile, and Kubernetes support.