Complimentary Gartner® Report! 'A CTO's Guide to Open-Source Software: Answering the Top 10 FAQs.'Read more

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

LogsMetricsTracesBindplane Agent
v1.36.0+

Configuration

FieldDescription
Choose Telemetry TypeThe kind of telemetry that should be sent to Honeycomb.
API KeyThe 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 DatasetHoneycomb dataset that metrics will be sent to. Will be created if it does not exist. See this Honeycomb documentation for more.
Logs DatasetHoneycomb 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.
ProtocolThe OTLP protocol to use when sending to Honeycomb. Can be HTTP or gRPC. See this Honeycomb documentation for more.
CompressionCompression algorithm to use when sending data to Honeycomb. Available options are none or gzip.
Additional HeadersAdd additional headers to be attached to requests.

This destination supports the following retry and queuing settings:

Sending QueuePersistent QueueRetry 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

observIQ docs - Honeycomb Destination - image 1
observIQ docs - Honeycomb Destination - image 2
observIQ docs - Honeycomb Destination - image 3

Standalone Destination

yaml
1apiVersion: bindplane.observiq.com/v1
2kind: Destination
3metadata:
4  id: honeycomb
5  name: honeycomb
6spec:
7  type: honeycomb
8  parameters:
9    - name: telemetry_types
10      value: ['Logs', 'Metrics', 'Traces']
11    - name: api_key
12      value: 'some_api_key'
13    - name: metrics_dataset
14      value: 'bindplane_metrics'
15    - name: logs_dataset
16      value: 'bindplane_logs'
17    - name: protocol
18      value: 'grpc'
19    - name: compression
20      value: 'gzip'
21    - name: retry_on_failure_enabled
22      value: true
23    - name: sending_queue_enabled
24      value: true
25    - name: persistent_queue_enabled
26      value: true