> ## Documentation Index
> Fetch the complete documentation index at: https://docs.honeycomb.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Honeycomb

<Badge className="hny-badge-enterprise-addon" stroke>Ent+</Badge>

<Note>
  This feature is available as an add-on for the [Honeycomb Enterprise plan](https://www.honeycomb.io/pricing/).
  Please contact your Honeycomb account team for details.
</Note>

## Description

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

## Prerequisites

A Honeycomb account, team, environment, and API key will need to be created before being able to send telemetry with this destination. See our [Honeycomb Quick Start guide](/get-started/start-building/application/) 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 | HTP Agent  |
| :--- | :------ | :----- | :--------- |
| ✓    | ✓       | ✓      | `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 our [Honeycomb documentation](/configure/environments/manage-api-keys/) for more. |
| Metrics Dataset       | Honeycomb dataset that metrics will be sent to. Will be created if it does not exist. See our [Honeycomb documentation](/send-data/opentelemetry/collector/#metrics-and-logs-signals) 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 our [Honeycomb documentation](/send-data/opentelemetry/collector/#metrics-and-logs-signals) for more.                       |
| Protocol              | The OTLP protocol to use when sending to Honeycomb. Can be `HTTP` or `gRPC`. See our [Honeycomb documentation](/send-data/opentelemetry/collector/#choosing-between-grpc-and-http) 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](/send-data/telemetry-pipeline/processors/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

<img src="https://mintcdn.com/honeycomb/ibXJI2unoLZRp0G4/_assets/images/htp/xnapper-honeycomb-dest-1.png?fit=max&auto=format&n=ibXJI2unoLZRp0G4&q=85&s=f64b2f349cf18fcf1a0de25aac21e969" alt="Honeycomb Docs - Honeycomb Destination - image 1" width="2164" height="1990" data-path="_assets/images/htp/xnapper-honeycomb-dest-1.png" />

<ImageBlock src="/htp/xnapper-honeycomb-dest-2.png" alt="Honeycomb Docs - Honeycomb Destination - image 2" />

<img src="https://mintcdn.com/honeycomb/ibXJI2unoLZRp0G4/_assets/images/htp/xnapper-honeycomb-dest-3.png?fit=max&auto=format&n=ibXJI2unoLZRp0G4&q=85&s=9fc23c2583a44f6982d395595a6da999" alt="Honeycomb Docs - Honeycomb Destination - image 3" width="2170" height="1990" data-path="_assets/images/htp/xnapper-honeycomb-dest-3.png" />

### Standalone Destination

```yaml theme={}
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
```
