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

# Deno

> Deno setup and configuration for ClickHouse Observability and self-managed deployments.

Use Deno's built-in OpenTelemetry support to send logs, metrics, and traces to ClickHouse Observability. You do not need the ClickStack Node.js SDK or the legacy Deno logging package.

This guide integrates:

## Set up OpenTelemetry

Follow the official [Deno OpenTelemetry setup instructions](https://docs.deno.com/runtime/fundamentals/open_telemetry/) to instrument your application. Configure the destination below, then enable Deno's built-in integration when starting your application:

```shell theme={null}
OTEL_DENO=true OTEL_SERVICE_NAME='my-deno-app' deno run app.ts
```

Add the permissions your application needs. Replace any example destinations or console-exporter settings from upstream instructions, including signal-specific endpoint overrides.

## Configure your destination

> [tab] Fully managed
>
> [Beta offering](https://clickhouse.com/docs/reference/settings/beta-and-experimental-features.md#beta-features)
>
> Open **Team Settings → Data → Managed Telemetry** in your service and copy the **OTLP HTTP endpoint** and **API key**. Use the complete HTTPS endpoint, including its port:
>
> ```shell theme={null}
> export OTEL_EXPORTER_OTLP_ENDPOINT='https://YOUR_OTEL_ENDPOINT:4318'
> export OTEL_EXPORTER_OTLP_HEADERS='authorization=Bearer%20YOUR_INGESTION_API_KEY'
> export OTEL_EXPORTER_OTLP_PROTOCOL='http/protobuf'
> ```

> [tab] Self-managed
>
> Use your collector's OTLP HTTP endpoint and ingestion key. Use `http://` instead of `https://` if your collector does not have TLS configured. For collector setup, see [Ingesting with OpenTelemetry](https://clickhouse.com/docs/clickstack/observability/ingesting-data/opentelemetry.md#self-managed).
>
> ```shell theme={null}
> export OTEL_EXPORTER_OTLP_ENDPOINT='https://YOUR_COLLECTOR_HOST:4318'
> export OTEL_EXPORTER_OTLP_HEADERS='authorization=YOUR_INGESTION_API_KEY'
> export OTEL_EXPORTER_OTLP_PROTOCOL='http/protobuf'
> ```

## Verify ingestion

Start your application and generate activity. In ClickHouse Observability, select a recent time range and find your application's service name in Logs or Traces. Check Metrics after allowing time for export.
