Skip to content

Observability docs #3835

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 101 commits into from
May 29, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
101 commits
Select commit Hold shift + click to select a range
e1f36e1
new docs
gingerwizard Apr 29, 2025
89ac3d5
initial
gingerwizard May 14, 2025
7b9405d
Merge branch 'main' into observability_docs
gingerwizard May 14, 2025
42836c5
guides
gingerwizard May 16, 2025
689ed46
Merge branch 'main' into observability_docs
gingerwizard May 16, 2025
0200c23
more docs
gingerwizard May 20, 2025
182546f
Merge branch 'main' into observability_docs
gingerwizard May 20, 2025
59fb034
initial docs
gingerwizard May 21, 2025
9836a38
more docs
gingerwizard May 22, 2025
e0a382b
improve getting started
gingerwizard May 22, 2025
08edfd3
more doc improvements
gingerwizard May 22, 2025
23954bd
update docker compose
gingerwizard May 22, 2025
ffbf1bf
Merge branch 'main' into observability_docs
gingerwizard May 22, 2025
5167eae
compose updates
gingerwizard May 22, 2025
ae2fb74
fix frontmatter
gingerwizard May 22, 2025
28619df
front matter
gingerwizard May 22, 2025
b955144
link fixes
gingerwizard May 22, 2025
93aeccc
add SDK page
gingerwizard May 22, 2025
ae09cf3
tweaks
gingerwizard May 22, 2025
97639c1
more docs
gingerwizard May 22, 2025
6132e31
fix ordering
gingerwizard May 22, 2025
4d77fb6
browser sdk
gingerwizard May 22, 2025
89b903e
more sdks
gingerwizard May 23, 2025
33e14f5
fix markdown
gingerwizard May 23, 2025
c6f521f
fix markdown
gingerwizard May 23, 2025
22eee81
more sdks
gingerwizard May 23, 2025
93fa85e
more sdks
gingerwizard May 23, 2025
0c46b9c
more sdks
gingerwizard May 23, 2025
a63a8f6
more sdks
gingerwizard May 23, 2025
b078f10
Merge branch 'main' into observability_docs
gingerwizard May 23, 2025
46fd611
fix spelling
gingerwizard May 23, 2025
6e34db3
ingestion doics
gingerwizard May 23, 2025
d299a01
outline docs
gingerwizard May 23, 2025
db9b355
Merge branch 'main' into observability_docs
gingerwizard May 23, 2025
9c2e32f
spell errors
gingerwizard May 23, 2025
b2cf586
links and content
gingerwizard May 23, 2025
c066bd2
more content
gingerwizard May 23, 2025
2f46226
more kubernetes data
gingerwizard May 23, 2025
4ca9a44
more collector docs
gingerwizard May 23, 2025
f23087a
more changes
gingerwizard May 25, 2025
edeb778
more docs
gingerwizard May 26, 2025
0ee19ad
rework collector docs
gingerwizard May 26, 2025
4463cb6
better org
gingerwizard May 26, 2025
b7ec8ff
more cleanup
gingerwizard May 26, 2025
0028b22
more ingestion
gingerwizard May 26, 2025
372b6a5
more docs
gingerwizard May 26, 2025
666a5eb
Add creating user
gingerwizard May 26, 2025
4748b4b
schemas
gingerwizard May 26, 2025
0e99050
opamp endpoint
gingerwizard May 26, 2025
b9fd310
more on opmap
gingerwizard May 26, 2025
3287c20
production with cloud
gingerwizard May 26, 2025
3154b38
Fix spelling
gingerwizard May 26, 2025
87a41ae
move to top and fix broken links
gingerwizard May 26, 2025
035747d
images for demo
gingerwizard May 27, 2025
9c8976c
updates
gingerwizard May 27, 2025
daebee7
new images
gingerwizard May 27, 2025
8644f29
new flow
gingerwizard May 27, 2025
8a233f6
spellings
gingerwizard May 27, 2025
6369e38
improve images
gingerwizard May 27, 2025
61f7f94
Merge branch 'main' into observability_docs
gingerwizard May 27, 2025
7070fbe
fix links
gingerwizard May 27, 2025
708f283
fix docker links
gingerwizard May 28, 2025
473aa64
spelling
gingerwizard May 28, 2025
83e259b
spelling
gingerwizard May 28, 2025
79221a2
spelling
gingerwizard May 28, 2025
565c92a
spelling
gingerwizard May 28, 2025
207fd6e
more spelling
gingerwizard May 28, 2025
e07aff6
change demo user to otel_demo
lio-p May 28, 2025
6253f0e
spelling
gingerwizard May 28, 2025
29247fb
links
gingerwizard May 28, 2025
112f1db
skip step if demo server
gingerwizard May 28, 2025
2d9cefb
more tweaks
gingerwizard May 28, 2025
c204bdc
Merge branch 'main' into observability_docs
gingerwizard May 28, 2025
5e0dca1
fix bash
gingerwizard May 28, 2025
c1762ff
Merge branch 'observability_docs' of https://github.com/clickhouse/cl…
lio-p May 28, 2025
d27fb75
Update docs/use-cases/observability/clickstack/production.md
gingerwizard May 28, 2025
1e75c48
Update docs/use-cases/observability/clickstack/architecture.md
gingerwizard May 28, 2025
4388259
spelling
gingerwizard May 28, 2025
5e4d0cb
Merge branch 'observability_docs' of https://github.com/clickhouse/cl…
gingerwizard May 28, 2025
f1a0f37
Update docs/use-cases/observability/clickstack/ingesting-data/kuberne…
gingerwizard May 28, 2025
b7dd8b6
Apply suggestions from code review
Blargian May 28, 2025
6246bf9
Apply suggestions from code review
gingerwizard May 28, 2025
7e42012
Apply suggestions from code review
gingerwizard May 28, 2025
9b4bc65
Apply suggestions from code review
gingerwizard May 28, 2025
231d1cd
Apply suggestions from code review
Blargian May 28, 2025
629285f
Update collector.md
Blargian May 28, 2025
598527f
fix for loop
gingerwizard May 28, 2025
ddf14e9
Merge branch 'observability_docs' of https://github.com/clickhouse/cl…
gingerwizard May 28, 2025
09ced62
op amp
gingerwizard May 28, 2025
0fbc591
fix link
gingerwizard May 28, 2025
9c5b2ad
persist local settings
gingerwizard May 28, 2025
7be782d
notes
gingerwizard May 28, 2025
6e4aeb9
root user note
gingerwizard May 28, 2025
eaf00d0
simple alerts
gingerwizard May 28, 2025
7d911f8
notes on OpAmp
gingerwizard May 28, 2025
245da93
Merge branch 'main' into observability_docs
gingerwizard May 29, 2025
722cf54
spelling
gingerwizard May 29, 2025
e56b099
Merge branch 'observability_docs' of https://github.com/clickhouse/cl…
gingerwizard May 29, 2025
d4f9c48
move off nightly
gingerwizard May 29, 2025
489a632
connection for browser
gingerwizard May 29, 2025
08116d3
sdk tweaks
gingerwizard May 29, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 30 additions & 0 deletions docs/getting-started/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,3 +21,33 @@ functions in ClickHouse. The sample datasets include:

<!-- The following table is automatically generated at build time
by https://github.com/ClickHouse/clickhouse-docs/blob/main/scripts/autogenerate-table-of-contents.sh -->
| Page | Description |
|-----|-----|
| [New York Taxi Data](/getting-started/example-datasets/nyc-taxi) | Data for billions of taxi and for-hire vehicle (Uber, Lyft, etc.) trips originating in New York City since 2009 |
| [Terabyte Click Logs from Criteo](/getting-started/example-datasets/criteo) | A terabyte of Click Logs from Criteo |
| [WikiStat](/getting-started/example-datasets/wikistat) | Explore the WikiStat dataset containing 0.5 trillion records. |
| [TPC-DS (2012)](/getting-started/example-datasets/tpcds) | The TPC-DS benchmark data set and queries. |
| [Recipes Dataset](/getting-started/example-datasets/recipes) | The RecipeNLG dataset, containing 2.2 million recipes |
| [COVID-19 Open-Data](/getting-started/example-datasets/covid19) | COVID-19 Open-Data is a large, open-source database of COVID-19 epidemiological data and related factors like demographics, economics, and government responses |
| [NOAA Global Historical Climatology Network](/getting-started/example-datasets/noaa) | 2.5 billion rows of climate data for the last 120 yrs |
| [GitHub Events Dataset](/getting-started/example-datasets/github-events) | Dataset containing all events on GitHub from 2011 to Dec 6 2020, with a size of 3.1 billion records. |
| [Amazon Customer Review](/getting-started/example-datasets/amazon-reviews) | Over 150M customer reviews of Amazon products |
| [Brown University Benchmark](/getting-started/example-datasets/brown-benchmark) | A new analytical benchmark for machine-generated log data |
| [Writing Queries in ClickHouse using GitHub Data](/getting-started/example-datasets/github) | Dataset containing all of the commits and changes for the ClickHouse repository |
| [Analyzing Stack Overflow data with ClickHouse](/getting-started/example-datasets/stackoverflow) | Analyzing Stack Overflow data with ClickHouse |
| [AMPLab Big Data Benchmark](/getting-started/example-datasets/amplab-benchmark) | A benchmark dataset used for comparing the performance of data warehousing solutions. |
| [New York Public Library "What's on the Menu?" Dataset](/getting-started/example-datasets/menus) | Dataset containing 1.3 million records of historical data on the menus of hotels, restaurants and cafes with the dishes along with their prices. |
| [Laion-400M dataset](/getting-started/example-datasets/laion-400m-dataset) | Dataset containing 400 million images with English image captions |
| [Star Schema Benchmark (SSB, 2009)](/getting-started/example-datasets/star-schema) | The Star Schema Benchmark (SSB) data set and queries |
| [The UK property prices dataset](/getting-started/example-datasets/uk-price-paid) | Learn how to use projections to improve the performance of queries that you run frequently using the UK property dataset, which contains data about prices paid for real-estate property in England and Wales |
| [Reddit comments dataset](/getting-started/example-datasets/reddit-comments) | Dataset containing publicly available comments on Reddit from December 2005 to March 2023 with over 14B rows of data in JSON format |
| [OnTime](/getting-started/example-datasets/ontime) | Dataset containing the on-time performance of airline flights |
| [Taiwan Historical Weather Datasets](/getting-started/example-datasets/tw-weather) | 131 million rows of weather observation data for the last 128 yrs |
| [Crowdsourced air traffic data from The OpenSky Network 2020](/getting-started/example-datasets/opensky) | The data in this dataset is derived and cleaned from the full OpenSky dataset to illustrate the development of air traffic during the COVID-19 pandemic. |
| [NYPD Complaint Data](/getting-started/example-datasets/nypd_complaint_data) | Ingest and query Tab Separated Value data in 5 steps |
| [TPC-H (1999)](/getting-started/example-datasets/tpch) | The TPC-H benchmark data set and queries. |
| [Foursquare places](/getting-started/example-datasets/foursquare-places) | Dataset with over 100 million records containing information about places on a map, such as shops, restaurants, parks, playgrounds, and monuments. |
| [YouTube dataset of dislikes](/getting-started/example-datasets/youtube-dislikes) | A collection is dislikes of YouTube videos. |
| [Geo Data using the Cell Tower Dataset](/getting-started/example-datasets/cell-towers) | Learn how to load OpenCelliD data into ClickHouse, connect Apache Superset to ClickHouse and build a dashboard based on data |
| [Environmental Sensors Data](/getting-started/example-datasets/environmental-sensors) | Over 20 billion records of data from Sensor.Community, a contributors-driven global sensor network that creates Open Environmental Data. |
| [Anonymized Web Analytics](/getting-started/example-datasets/metrica) | Dataset consisting of two tables containing anonymized web analytics data with hits and visits |
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
---
title: 'Demo Application'
description: 'Demo application for observability'
slug: /observability/demo-application
keywords: ['observability', 'logs', 'traces', 'metrics', 'OpenTelemetry', 'Grafana', 'OTel']
---

The OpenTelemetry project includes a [demo application](https://opentelemetry.io/docs/demo/). A maintained fork of this application with ClickHouse as a data source for logs and traces can be found [here](https://github.com/ClickHouse/opentelemetry-demo). The [official demo instructions](https://opentelemetry.io/docs/demo/docker-deployment/) can be followed to deploy this demo with docker. In addition to the [existing components](https://opentelemetry.io/docs/demo/collector-data-flow-dashboard/), an instance of ClickHouse will be deployed and used for the storage of logs and traces.
Original file line number Diff line number Diff line change
Expand Up @@ -23,11 +23,11 @@ import Image from '@theme/IdealImage';
Grafana represents the preferred visualization tool for Observability data in ClickHouse. This is achieved using the official ClickHouse plugin for Grafana. Users can follow the installation instructions found [here](/integrations/grafana).

V4 of the plugin makes logs and traces a first-class citizen in a new query builder experience. This minimizes the need for SREs to write SQL queries and simplifies SQL-based Observability, moving the needle forward for this emerging paradigm.
Part of this has been placing Open Telemetry (OTel) at the core of the plugin, as we believe this will be the foundation of SQL-based Observability over the coming years and how data will be collected.
Part of this has been placing OpenTelemetry (OTel) at the core of the plugin, as we believe this will be the foundation of SQL-based Observability over the coming years and how data will be collected.

## Open Telemetry Integration {#open-telemetry-integration}
## OpenTelemetry Integration {#open-telemetry-integration}

On configuring a Clickhouse datasource in Grafana, the plugin allows the users to specify a default database and table for logs and traces and whether these tables conform to the OTel schema. This allows the plugin to return the columns required for correct log and trace rendering in Grafana. If you've made changes to the default OTel schema and prefer to use your own column names, these can be specified. Usage of the default OTel column names for columns such as time (Timestamp), log level (SeverityText), or message body (Body) means no changes need to be made.
On configuring a ClickHouse datasource in Grafana, the plugin allows the user to specify a default database and table for logs and traces and whether these tables conform to the OTel schema. This allows the plugin to return the columns required for correct log and trace rendering in Grafana. If you've made changes to the default OTel schema and prefer to use your own column names, these can be specified. Usage of the default OTel column names for columns such as time (`Timestamp`), log level (`SeverityText`), or message body (`Body`) means no changes need to be made.

:::note HTTP or Native
Users can connect Grafana to ClickHouse over either the HTTP or Native protocol. The latter offers marginal performance advantages which are unlikely to be appreciable in the aggregation queries issued by Grafana users. Conversely, the HTTP protocol is typically simpler for users to proxy and introspect.
Expand Down
18 changes: 18 additions & 0 deletions docs/use-cases/observability/build-your-own/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
---
slug: /use-cases/observability/build-your-own
title: 'Build Your Own Observability Stack'
pagination_prev: null
pagination_next: null
description: 'Landing page building your own observability stack'
---

This guide helps you build a custom observability stack using ClickHouse as the foundation. Learn how to design, implement, and optimize your observability solution for logs, metrics, and traces, with practical examples and best practices.

| Page | Description |
|-------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [Introduction](/use-cases/observability/introduction) | This guide is designed for users looking to build their own observability solution using ClickHouse, focusing on logs and traces. |
| [Schema design](/use-cases/observability/schema-design) | Learn why users are recommended to create their own schema for logs and traces, along with some best practices for doing so. |
| [Managing data](/observability/managing-data) | Deployments of ClickHouse for observability invariably involve large datasets, which need to be managed. ClickHouse offers features to assist with data management. |
| [Integrating OpenTelemetry](/observability/integrating-opentelemetry) | Collecting and exporting logs and traces using OpenTelemetry with ClickHouse. |
| [Using Visualization Tools](/observability/grafana) | Learn how to use observability visualization tools for ClickHouse, including HyperDX and Grafana. |
| [Demo Application](/observability/demo-application) | Explore the OpenTelemetry demo application forked to work with ClickHouse for logs and traces. |
Loading