# Stream logs to Honeycomb

A Honeycomb log stream sends each request of a gateway environment to Honeycomb as one trace over OTLP/HTTP, about 30 seconds after the request ends.

## Before you begin

- A Honeycomb ingest key for the environment that receives the traces. Create it under **Environment settings** > **API keys** in Honeycomb. See [Manage API keys](https://docs.honeycomb.io/configure/environments/manage-api-keys/) in the Honeycomb docs.

## Add the stream

1. In the portal, go to [**Agent Gateway**](https://auth.faustine.ai/go?to=%2Fintegrations%2Fagent-gateway) and select your gateway.
2. Select the **Logs** tab, then **Log settings**.
3. Under **Log streams**, select **Add a stream**.
4. Under **Destination**, select **Honeycomb**.
5. Fill in the fields in the table.
6. Select **Send test event**. Faustine sends a trace of one request marked `test: true` and shows **Delivered** when Honeycomb accepts it.
7. Select **Continue**.
8. Under **What to send**, choose **All requests** or **Errors and denials**, and turn on **Discovery calls** or **Payloads** if you want them. Select **Continue**.
9. Under **Review and create**, enter a **Name** and select **Create stream**.

| Field | Value |
| --- | --- |
| **Region** | **US** (`api.honeycomb.io`) or **EU** (`api.eu1.honeycomb.io`). |
| **Ingest key** | The Honeycomb ingest key. |
| **Service name** | The `service.name` of the traces, which is also the Honeycomb dataset they are stored in. Optional. Defaults to `faustine-gateway`. |

The stream's page opens. The first trace reaches Honeycomb about 30 seconds after the next request ends.

## What Honeycomb receives

Each request is one trace, sent over OTLP/HTTP in JSON. For the spans and their attributes, see [What the collector receives](https://docs.faustine.ai/technologies/opentelemetry/#what-the-collector-receives).

## Next steps

- [Log streams](https://docs.faustine.ai/agent-gateway/log-streams/): delivery, retries and the fields of a request.
- [Redact sensitive fields](https://docs.faustine.ai/agent-gateway/redact-sensitive-fields/): decide what a stream can carry.
- [Set recording and retention](https://docs.faustine.ai/agent-gateway/retention/): record the payloads a stream sends.
