[TP] Déployer un pipeline d'observabilité complet avec Agent et Gateway
Ce que vous allez apprendre dans ce TP :
- Déployer un backend de visualisation complet (Grafana, Mimir, Loki, Tempo)
- Configurer et lancer un collecteur OTel en mode Gateway
- Configurer et lancer un collecteur OTel en mode Agent
- Instrumenter une application pour envoyer sa télémétrie à l'Agent
- Visualiser les traces, métriques et logs dans Grafana
- Cloner le dépôt de configuration
- Démarrer l'infrastructure via Docker Compose
- Valider l'accès aux outils de visualisation
- Créer le fichier de configuration pour la gateway
- Lancer le conteneur de la gateway
- Créer la configuration pour l'agent
- Lancer l'agent et l'application de démo
- Explorer les logs applicatifs
- Visualiser les métriques de performance
- Analyser une trace distribuée
Architecture Cible
Ce que vous allez apprendre dans cette section :L'objectif est de construire un pipeline où une application instrumentée envoie ses données à un **agent OTel local**. Cet agent transmet ensuite les données à une **gateway OTel centralisée**, qui se charge de les traiter et de les exporter vers notre backend de stockage et de visualisation (stack LGTM : Loki, Grafana, Tempo, Mimir).
- Déployer un backend de visualisation complet (Grafana, Mimir, Loki, Tempo)
- Configurer et lancer un collecteur OTel en mode Gateway
- Configurer et lancer un collecteur OTel en mode Agent
- Instrumenter une application pour envoyer sa télémétrie à l'Agent
- Visualiser les traces, métriques et logs dans Grafana

Pourquoi cette architecture Agent + Gateway ?
- Résilience : L'agent peut mettre en cache les données si la gateway est indisponible.
- Performance : L'agent, étant local, a une latence très faible pour l'application. Le traitement lourd (filtrage, enrichissement) est déporté sur la gateway.
- Scalabilité : On peut scaler la gateway indépendamment des applications pour gérer la charge de milliers d'agents.
- Sécurité : Seule la gateway a besoin des credentials pour se connecter aux backends finaux.
Étape 1 : Déploiement du Backend (Stack LGTM)
Ce que vous allez apprendre dans cette section :Nous allons commencer par déployer notre backend qui centralisera et visualisera toutes les données de télémétrie.
- Cloner le dépôt de configuration
- Démarrer l'infrastructure via Docker Compose
- Valider l'accès aux outils de visualisation
-
Récupérer les fichiers de configuration
Récupérez les fichiers de configuration nécessaires pour le déploiement du backend. -
Déployer le backend via Docker Compose
Lancez le déploiement des services de la stack LGTM (Mimir pour les métriques, Loki pour les logs, Tempo pour les traces et Grafana pour la visualisation). -
Vérifier l'accès et le bon fonctionnement de Grafana
Assurez-vous que l'interface est accessible et que les sources de données sont prêtes.
Étape 2 : Configuration de la Gateway OTel
Ce que vous allez apprendre dans cette section :La gateway est le point de collecte central. Elle reçoit les données de tous les agents, les traite et les exporte vers le backend.
- Créer le fichier de configuration pour la gateway
- Lancer le conteneur de la gateway
-
Créer la configuration de la Gateway
Créez un fichier `otel-gateway-config.yaml` qui définit les récepteurs, processeurs et exportateurs. La gateway écoutera sur le port 4317 et exportera vers Loki, Tempo et Mimir. -
Lancer la Gateway
Ajoutez le service `otel-gateway` à votre fichier `docker-compose.yaml` et démarrez-le.
Étape 3 : Configuration de l'Agent OTel et de l'Application
Ce que vous allez apprendre dans cette section :L'agent s'exécute au plus près de l'application. Son rôle est simple : collecter les données et les transférer à la gateway. Nous déploierons également une application de démo qui génère des traces, logs et métriques.
- Créer la configuration pour l'agent
- Lancer l'agent et l'application de démo
-
Créer la configuration de l'Agent
Créez un fichier `otel-agent-config.yaml`. La configuration de l'agent est minimale : il reçoit les données de l'application (sur le port 5317 pour ne pas entrer en conflit avec la gateway) et les exporte vers la gateway. -
Lancer l'Agent et l'Application de Démo
Ajoutez les services `otel-agent` et `app-demo` à votre `docker-compose.yaml` et démarrez-les. L'application est configurée pour envoyer sa télémétrie à l'agent.
Étape 4 : Analyse et Visualisation dans Grafana
Ce que vous allez apprendre dans cette section :Maintenant que le pipeline est complet, explorons les signaux collectés dans Grafana.
- Explorer les logs applicatifs
- Visualiser les métriques de performance
- Analyser une trace distribuée
-
Explorer les Logs
Visualisez les logs envoyés par `app-demo` dans Loki. -
Consulter les Métriques
Consultez les métriques de performance (ex: latence des requêtes) collectées dans Mimir. -
Analyser les Traces
Suivez le cheminement des requêtes distribuées dans Tempo.
Articles recommandés
Le concept de score va permettre à Elasticsearch de classer vos documents par...
Dans Dynatrace, les concepts de 'Technologie' et de 'Services' aident à organ...
Cet article détaille les différences entre trois concepts essentiels dans l'e...
Comprendre l'évolution de la facturation dans Dynatrace : la différence entre...
Découvrez les différents types de services que Dynatrace peut surveiller, leu...
Découvrez comment utiliser les SLO (Service Level Objectives) dans Dynatrace ...
Découvrez les différences entre Apdex et Core Web Vitals, deux indicateurs de...
Comme toujours dans nos missions de conseil, nous recommandons aux entreprise...
Découvrez les raisons clés pour collecter des métriques avec des exemples con...
Découvrez en détail les quatre types de métriques supportés par Prometheus (C...
Désormais vous disposez dans Dynatrace (SaaS) d'un Data Lakehouse nommé Grail...
Apprenez à maîtriser PromQL, le langage de requête utilisé dans Prometheus, a...
Pense‑bête des commandes CLI/API pour gérer tags, propriétés, variables d'env...
Apprenez à utiliser Grafana Alloy pour collecter, transformer et acheminer lo...
Découvrez comment configurer Grafana Alloy pour superviser le serveur sur leq...
Découvrez pourquoi et comment configurer Grafana Alloy pour qu'il se supervis...
Découvrez comment activer, sécuriser et utiliser l'interface web intégrée de ...
Découvrez le protocole OTLP expliqué simplement. Comprendre les différences e...
Tutoriel complet sur Grafana Alloy. Découvrez comment installer, configurer e...
Dans le cadre d'une formation Grafana ou formation observabilité, maîtrisez l...
Apprenez à configurer Grafana Alloy pour collecter, transformer et envoyer de...
La capacité à connaître l'état interne d'un système à partir des données que ...
Découvrez comment configurer Grafana Alloy pour lire des fichiers de logs, jo...
Plongez dans le traitement des traces distribuées. Apprenez à ingérer des tra...
Découvrez comment configurer le profilage continu (Continuous Profiling) dans...
Apprenez à gérer les déploiements à grande échelle de Grafana Alloy. Configur...
Découvrez Grafana Assistant, l'intelligence artificielle intégrée à Grafana C...
Comparaison détaillée entre Grafana Alloy et l'OpenTelemetry Collector. Décou...
Comparaison entre Grafana Alloy et Dynatrace ActiveGate. Comprenez les différ...
Découvrez l'évolution des collecteurs de télémétrie de l'écosystème Grafana. ...
Un guide de référence complet sur tous les composants disponibles dans Grafan...
Découvrez l'importance stratégique des Entity Selectors, maîtrisez leur synta...
Apprenez à configurer Dynatrace pour respecter le RGPD, masquer les données s...
Découvrez comment utiliser le Synthetic Monitoring de Dynatrace pour surveill...
Découvrez comment l'application Credential Vault de Dynatrace permet de gérer...
Découvrez les différentes déclinaisons du DevOps : DevSecOps, AIOps, NoOps, G...
Comparatif complet entre les deux géants de l'observabilité. Automatisation p...
Découvrez les différences fondamentales entre Grafana, le roi des métriques m...
Comparatif entre Loki, le système de logs inspiré par Prometheus, et Elastics...
Pourquoi choisir VictoriaMetrics comme alternative à Prometheus pour le stock...
Comprenez la différence entre l'instrumentation manuelle standardisée d'OpenT...
Découvrez le concept de XLA (Experience Level Agreements), la différence avec...
Comprenez les différences fondamentales entre les Management Zones et les Seg...
Apprenez à utiliser l'API Dynatrace pour automatiser votre observabilité : ge...
Comprenez les fondamentaux du Cloud Computing à travers les 5 caractéristique...
Découvrez les différences entre l'infrastructure, la plateforme et le logicie...
Apprenez qui est responsable de quoi en matière de sécurité dans le Cloud.
Comprenez comment le cloud s'adapte automatiquement à la charge de vos utilis...
Comment passer du CapEx à l'OpEx tout en gardant le contrôle financier.
Focus sur le Function as a Service (FaaS) et l'abstraction de l'infrastructure.
Découvrez pourquoi le traitement à la périphérie du réseau est essentiel pour...
Comprendre les principes des microservices, des conteneurs et des APIs.
Découvrez les différentes approches pour déplacer votre infrastructure on-pre...
Découvrez comment intégrer le Synthetic Monitoring dans vos pipelines CI/CD p...
Découvrez comment utiliser le provisioning de Grafana pour gérer vos configur...
Apprenez à étendre les capacités de Grafana via les Data Sources. Découvrez l...
Apprenez à utiliser les transformations Grafana pour reformater, calculer et ...
Apprenez à utiliser les variables pour créer des tableaux de bord interactifs...
Optimisez votre plateforme Dynatrace grâce à nos recommandations d'experts : ...
Cet article détaille les différences entre trois concepts essentiels dans l'e...
Maîtrisez OpenTelemetry grâce à nos conseils d'experts : implémentation du Co...
Découvrez comment sécuriser vos backends contre les abus et les attaques cour...
Assurez la continuité de service de vos applications avec les stratégies de h...
Découvrez les règles d'or pour configurer Grafana Alloy de manière robuste : ...
Plongée au cœur de l'architecture OpenTelemetry. Apprenez comment les données...