Honeycomb.io

Description

Sends logs, metrics, and traces to Honeycomb.io using the OTLP exporter.

Prerequisites

A Honeycomb.io account, team, environment, and API key will need to be created before being able to send telemetry with this destination. See this Honeycomb quick start guide for more information. With a Honeycomb environment and API key setup, you can configure this destination to send to Honeycomb. Note that the API key will need the "Send Events" permission. If configuring this destination with a dataset that does not exist, the API key will also need the "Create Dataset" permission to work properly.

Supported Types

Logs
Metrics
Traces
Bindplane Collector

v1.36.0+

Configuration

Field
Description

Choose Telemetry Type

The kind of telemetry that should be sent to Honeycomb.

API Key

The API key to use for sending telemetry to Honeycomb. Make sure the key has the "Send Events" permission. If the provided dataset(s) do not exist, use the "Create Dataset" permission as well. See this Honeycomb documentation for more.

Metrics Dataset

Honeycomb dataset that metrics will be sent to. Will be created if it does not exist. See this Honeycomb documentation for more.

Logs Dataset

Honeycomb dataset that logs will be sent to. Will be created if it does not exist. If not set, the "service.name" log resource attribute will be used. See this Honeycomb documentation for more.

Protocol

The OTLP protocol to use when sending to Honeycomb can be HTTP or gRPC. See the Honeycomb documentation for more.

Compression

Compression algorithm to use when sending data to Honeycomb. Available options are none or gzip.

Additional Headers

Add additional headers to be attached to requests.

This destination supports the following retry and queuing settings:

Sending Queue
Persistent Queue
Retry on Failure

Honeycomb Datasets

The Honeycomb destination can be configured to route telemetry to specific Honeycomb datasets, however, Refinery will respect the service.name resource field when determining which dataset the telemetry should belong to.

You can route telemetry to datasets dynamically by using the Add Fields processor to set service.name resource field.

Example Configuration

For this configuration we'll configure to send logs, metrics, and traces. We specify an API key, Metrics Dataset, and Logs Dataset. In the Advanced section we specify gRPC protocol and gzip compression. We'll also enable Retry on Failure, Sending Queue, and Persistent Queueing.

Web Interface

Bindplane docs - Honeycomb.io - image 1
Bindplane docs - Honeycomb.io - image 2
Bindplane docs - Honeycomb.io - image 3

Standalone Destination

apiVersion: bindplane.observiq.com/v1
kind: Destination
metadata:
  id: honeycomb
  name: honeycomb
spec:
  type: honeycomb
  parameters:
    - name: telemetry_types
      value: ['Logs', 'Metrics', 'Traces']
    - name: api_key
      value: 'some_api_key'
    - name: metrics_dataset
      value: 'bindplane_metrics'
    - name: logs_dataset
      value: 'bindplane_logs'
    - name: protocol
      value: 'grpc'
    - name: compression
      value: 'gzip'
    - name: retry_on_failure_enabled
      value: true
    - name: sending_queue_enabled
      value: true
    - name: persistent_queue_enabled
      value: true

Last updated

Was this helpful?