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

# Ingesting data

> Send application and infrastructure telemetry to the managed OpenTelemetry collector in ClickHouse Observability.

> [tab] Fully managed
>
> [Beta offering](https://clickhouse.com/docs/reference/settings/beta-and-experimental-features.md#beta-features)
>
> ClickHouse Observability includes a **managed OpenTelemetry (OTel) collector** that receives logs, metrics, traces, and session replay data and writes them to ClickHouse Cloud. ClickHouse Cloud operates the ingestion collector, database, and ClickStack UI. You instrument your applications and configure them or your data collection agents to send telemetry to the managed service.
>
> ![Fully managed architecture with the OpenTelemetry collector, ClickHouse, and ClickStack UI operated by ClickHouse Cloud](https://mintcdn.com/private-7c7dfe99/RGhcmZvoJO57c5Gc/images/use-cases/observability/clickstack-managed-architecture.svg?fit=max\&auto=format\&n=RGhcmZvoJO57c5Gc\&q=85\&s=a42536968dfc7919ce0760c22638a2ab)
>
> For more details about these components, see [Architecture](https://clickhouse.com/docs/clickstack/observability/architecture.md).
>
> ## Find your connection details
>
> In your service, open **Team Settings → Data** and find **Managed Telemetry**. This section provides the OTLP endpoint and API key for sending telemetry to your service.
>
> Select **URL**, **Collector config**, or **Env vars** to view the connection details in the format you need, then use **Copy connection details**. Configure your SDK or collector with the provided endpoint and authentication settings.
>
> ![Managed Telemetry showing the masked OTLP HTTP endpoint and API key](https://mintcdn.com/private-7c7dfe99/Zk1feNn6fCQBpold/images/clickstack/getting-started/observability-managed-telemetry.png?fit=max\&auto=format\&n=Zk1feNn6fCQBpold\&q=85\&s=e63a2ac2e6ab996d3fc360ebe0f487a5)
>
> See [Managed Telemetry](https://clickhouse.com/docs/clickstack/observability/managing/config.md#managed-telemetry) for details. You can use **Send a Test Log** to submit a sample log to the service.
>
> ## Choose how to send telemetry
>
> ### Application instrumentation
>
> Language SDKs collect telemetry from inside your applications, such as request traces and application logs. Configure your SDK to export telemetry using OTLP to the managed endpoint, or to a collector in your environment that forwards it to the service.
>
> You can use existing OpenTelemetry instrumentation. ClickStack SDKs also provide features such as browser session replay; see [Session replay](https://clickhouse.com/docs/clickstack/observability/features/session-replay.md) for a managed setup example.
>
> ### Infrastructure and collection agents
>
> Run collection agents in your environment to gather telemetry such as host metrics, container logs, and Kubernetes events. An OpenTelemetry collector can run alongside an application, on a host, or as a Kubernetes DaemonSet, depending on what you need to collect.
>
> Configure these agents to forward telemetry to the managed OTLP endpoint using your service's connection details. You can also route application telemetry through these collectors for processing before it reaches ClickHouse Observability.
>
> ## Verify ingestion
>
> After configuring your application or collector, generate some telemetry and open [Search](https://clickhouse.com/docs/clickstack/observability/features/search.md). Select the **Logs** or **Traces** source, choose a time range that includes the new events, and search for your service name to confirm that the data has arrived.

> [tab] Self-managed
>
> All data is ingested into Self-managed ClickHouse Observability via an **OpenTelemetry (OTel) collector**. This acts as the primary entry point for logs, metrics, traces, and session data.
>
> You run an OpenTelemetry Collector to receive telemetry data from your applications. With Self-managed ClickHouse Observability, ClickHouse and the UI are hosted and managed in ClickHouse Cloud, with integrated authentication and operational management handled for you.
>
> ![OTLP telemetry flowing through a self-managed collector to ClickHouse, with ClickStack UI hosted in ClickHouse Cloud](https://mintcdn.com/private-7c7dfe99/RGhcmZvoJO57c5Gc/images/use-cases/observability/clickstack-self-managed-architecture.svg?fit=max\&auto=format\&n=RGhcmZvoJO57c5Gc\&q=85\&s=b3d2198352d1e799280d2d7ba1202376)
>
> The collector exposes two OTLP endpoints:
>
> * **HTTP** - port `4318`
> * **gRPC** - port `4317`
>
> You can send data to these endpoints either directly from [language SDKs](https://clickhouse.com/docs/clickstack/observability/ingesting-data/sdks.md) or OTel-compatible data collection agents e.g. other OTel collectors collecting infrastructure metrics and logs.
>
> More specifically:
>
> * [**Language SDKs**](https://clickhouse.com/docs/clickstack/observability/ingesting-data/sdks.md) are responsible for collecting telemetry from within your application - most notably **traces** and **logs** - and exporting this data to the OpenTelemetry collector, via the OTLP endpoint, which handles ingestion into ClickHouse. For more details on the language SDKs available see [SDKs](https://clickhouse.com/docs/clickstack/observability/ingesting-data/sdks.md).
>
> * **Data collection agents** are agents deployed at the edge — on servers, Kubernetes nodes, or alongside applications. They collect infrastructure telemetry (e.g. logs, metrics) or receive events directly from applications instrumented with SDKs. In this case, the agent runs on the same host as the application, often as a sidecar or DaemonSet. These agents forward data to the central ClickStack OTel collector, which acts as a [gateway](https://clickhouse.com/docs/clickstack/self-configured/ingesting-data/collector.md#collector-roles-self-configured), typically deployed once per cluster, data center, or region. The [gateway](https://clickhouse.com/docs/clickstack/self-configured/ingesting-data/collector.md#collector-roles-self-configured) receives OTLP events from agents or applications and handles ingestion into ClickHouse. See [OTel collector](https://clickhouse.com/docs/clickstack/self-configured/ingesting-data/collector.md) for more details. These agents can be other instances of the OTel collector or alternative technologies such as [Fluentd](https://www.fluentd.org/) or [Vector](https://vector.dev/).
>
> > [!NOTE]
> >
> > **OpenTelemetry compatibility**
> >
> > While ClickStack offers its own language SDKs and a custom OpenTelemetry collector, with enhanced telemetry and features, you can also use your existing OpenTelemetry SDKs and agents seamlessly.
