This article is available in French.
1. Présentation #
Une pile intégrée.
Les briques #
ClickStack est la pile d'observabilité proposée par ClickHouse : un OpenTelemetry Collector préconfiguré, ClickHouse avec un schéma optimisé, et HyperDX, une interface de recherche et d'analyse rachetée par ClickHouse. Elle vise une expérience proche des outils commerciaux, en open source.
2. Installer #
Tout-en-un ou séparé.
All-in-one #
docker run -d --name clickstack \
-p 8080:8080 -p 4317:4317 -p 4318:4318 \
docker.hyperdx.io/hyperdx/hyperdx-all-in-one
# Interface : http://localhost:8080 (création du compte au premier accès)La clé d'ingestion (API key) affichée dans les paramètres de l'équipe doit être envoyée par les SDK dans l'en-tête authorization.
export OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4318
export OTEL_EXPORTER_OTLP_HEADERS="authorization=<cle_ingestion>"
export OTEL_SERVICE_NAME=frontProduction #
En production, on sépare les briques : ClickHouse (ou ClickHouse Cloud) répliqué, des Collectors dimensionnés pour l'ingestion, et HyperDX connecté à ClickHouse. Un chart Helm est fourni.
Erreur Courante : L'image tout-en-un stocke tout dans un seul conteneur : parfaite pour un essai, inadaptée à des données que l'on veut conserver.
3. Utiliser HyperDX #
Chercher et corréler.
Fonctions #
| Fonction | Usage |
|---|---|
| Recherche | Syntaxe de type Lucene (level:error service:checkout "timeout") ou SQL |
| Traces | Chronologie, spans, logs associés à chaque span |
| Sessions | Rejeu des sessions navigateur (avec le SDK navigateur), reliées aux traces back-end |
| Graphes et dashboards | Agrégations sur n'importe quel champ |
| Alertes | Sur recherches et graphes |
Bonne Pratique : Le passage d'un log à sa trace, puis à la session navigateur qui l'a provoquée, est le point fort de la pile : instrumentez front et back avec OpenTelemetry pour en profiter.
My progress
Sign in to track your progress and take notes. Sign in
Recommended Articles
Understanding the concept of score
The concept of score allows Elasticsearch to rank your documents by relevance during a search.
Understanding the Elastic Common Schema (ECS)
As always in our consulting engagements, we recommend that companies harmonise and standardise: k...
License consumption types
Understand the evolution of billing in Dynatrace: the difference between the old licensing model ...
Grafana Alloy: The importance of Self-Monitoring
Discover why and how to configure Grafana Alloy so that it monitors itself, collecting its own lo...
Grafana Alloy: Understanding and exploiting the User Interface (UI)
Discover how to enable, secure, and use Grafana Alloy's built-in web interface to visualize your ...
Grafana Alloy: Introduction and Architecture
Discover the fundamental concepts of Grafana Alloy, the transition from the static Agent to Alloy...
Grafana Alloy: Syntax and Configuration (Alloy Language: River)
As part of a Grafana training or observability training, master the declarative syntax of Grafana...
Grafana Alloy: Metrics Collection (Prometheus & Ecosystem)
Learn how to configure Grafana Alloy to collect, transform, and forward metrics using the Prometh...
Grafana Alloy: Log Management with Loki
Discover how to configure Grafana Alloy to read log files, journald, or network streams, process ...