> ## 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.

# Language SDKs

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

Instrument your application to send telemetry to ClickHouse Observability using ClickStack SDKs or OpenTelemetry. The guides below cover application instrumentation and connection settings for both ClickHouse Observability and self-managed deployments.

To have a coding assistant apply these instructions to your application, follow [Instrument with AI](https://clickhouse.com/docs/clickstack/observability/ingesting-data/sdks/instrument-with-ai.md).

| Language or platform | Guide |
| - | - |
| AWS Lambda | [ClickStack Node.js SDK for async handlers, or OpenTelemetry layers](https://clickhouse.com/docs/clickstack/observability/ingesting-data/sdks/aws-lambda.md) |
| Browser | [Browser telemetry and session replay](https://clickhouse.com/docs/clickstack/observability/ingesting-data/sdks/browser.md) |
| Deno | [Built-in OpenTelemetry support](https://clickhouse.com/docs/clickstack/observability/ingesting-data/sdks/deno.md) |
| Elixir | [Erlang/Elixir tracing](https://clickhouse.com/docs/clickstack/observability/ingesting-data/sdks/elixir.md) |
| Go | [Go application instrumentation](https://clickhouse.com/docs/clickstack/observability/ingesting-data/sdks/golang.md) |
| Java | [Java agent and SDK](https://clickhouse.com/docs/clickstack/observability/ingesting-data/sdks/java.md) |
| NestJS | [ClickStack Node.js SDK for NestJS](https://clickhouse.com/docs/clickstack/observability/ingesting-data/sdks/nestjs.md) |
| Next.js (self-hosted Node.js) | [ClickStack Node.js SDK](https://clickhouse.com/docs/clickstack/observability/ingesting-data/sdks/nextjs.md#self-hosted-nextjs) |
| Next.js (Vercel or Edge) | [`@vercel/otel`](https://clickhouse.com/docs/clickstack/observability/ingesting-data/sdks/nextjs#vercel-or-edge) |
| Node.js | [ClickStack Node.js SDK](https://clickhouse.com/docs/clickstack/observability/ingesting-data/sdks/nodejs.md) |
| Python | [Python application instrumentation](https://clickhouse.com/docs/clickstack/observability/ingesting-data/sdks/python.md) |
| React Native | [React Native JavaScript-layer tracing](https://clickhouse.com/docs/clickstack/observability/ingesting-data/sdks/react-native.md) |
| Ruby on Rails | [Ruby on Rails tracing](https://clickhouse.com/docs/clickstack/observability/ingesting-data/sdks/ruby.md) |

## Connect your application

1. Follow the guide for your language or platform to configure instrumentation.
2. Choose your destination in that guide:
   * **Fully managed:** use your service's managed OTLP endpoint and ingestion API key, available in **Team Settings → Data → Managed Telemetry**.
   * **Self-managed:** use your OpenTelemetry Collector's OTLP endpoint and configured ingestion key.
3. Generate application activity, then verify the expected telemetry in the UI.

The individual guides provide the authentication format and exporter settings for each SDK. The Lambda guide also provides an OpenTelemetry layers option that forwards telemetry through a local Collector.
