RousselTMLEARNING

TP · Jaeger : tracing distribué de la découverte à l'expertise

TP : Jaeger all-in-one et diagnostic avec HotROD

Ce que vous allez apprendre dans ce TP
  • Lancer Jaeger et HotROD
  • Lire une trace
  • Identifier le goulot d'étranglement

Introduction #

Ce que vous allez apprendre dans cette section
  • Lancer Jaeger et HotROD
  • Lire une trace
  • Identifier le goulot d'étranglement

Contexte. Les utilisateurs de HotROD se plaignent : commander une voiture prend parfois plusieurs secondes. Vous utilisez les traces pour trouver la cause.

Prérequis : Docker Compose  ·  Durée estimée : 40 min

Votre premier diagnostic par les traces.

Mise en place #

Étapes guidées, avec leur correction.

  1. 1. Démarrer

    Pourquoi ? HotROD envoie ses traces en OTLP à Jaeger.

    Créez un Compose avec Jaeger et HotROD, puis démarrez-le.
  2. 2. Générer des requêtes

    Pourquoi ? Plusieurs clics simultanés reproduisent la charge qui ralentit le service.

    Ouvrez http://localhost:8080 et cliquez rapidement une dizaine de fois sur les boutons des clients.
  3. 3. Trouver une trace lente

    Pourquoi ? Le nuage de points met en évidence les traces anormales.

    Dans Jaeger, cherchez les traces du service frontend pour l'opération HTTP GET /dispatch et ouvrez la plus lente.
  4. 4. Lire la chronologie

    Pourquoi ? Le chemin critique révèle où le temps est passé.

    Quel span est le plus long sur le chemin critique ? Que remarquez-vous sur les appels à route et à redis ?
  5. 5. Vérifier avec la vue System Architecture

    Pourquoi ? Le graphe de dépendances confirme la topologie déduite des traces.

    Ouvrez l'onglet System Architecture et retrouvez les services et leurs appels.

Niveau de difficulté : ●●○○○ (2/5)

Mon suivi

  • ⏱ Durée estimée : ≈ 40 min

Connectez-vous pour suivre votre progression et prendre des notes. Se connecter

💬 Questions sur cette leçon

Aucune question pour l'instant : soyez le premier à demander de l'aide ou à partager votre configuration.

Poser une question sur cette leçon →

Articles recommandés

Le tracing distribué avec Jaeger : concepts et architecture

Les concepts du tracing distribué (trace, span, contexte, propagation) et Jaeger : son histoire, ...

Installer Jaeger v2 : all-in-one, configuration et stockages

Lancer Jaeger v2 en all-in-one, comprendre son fichier de configuration (extensions jaeger_storag...

Analyser des traces dans l'interface de Jaeger

Rechercher des traces, lire une chronologie, repérer le chemin critique, comparer deux traces, ut...

Instrumenter ses applications pour Jaeger avec OpenTelemetry

Envoyer des traces à Jaeger avec OpenTelemetry : auto-instrumentation (Java, Python, Node.js), SD...

Grafana Tempo ou Jaeger : quel backend de traces choisir ?

Comparatif détaillé de Grafana Tempo et Jaeger : architecture, stockage, recherche, langage de re...

Jaeger en production : échantillonnage, stockage, Kafka et Kubernetes

Rendre Jaeger fiable et abordable : stratégies d'échantillonnage (head, tail, adaptatif), dimensi...

Bonnes pratiques du tracing distribué avec Jaeger

Check-list pour un tracing utile : instrumentation OpenTelemetry, nommage des spans, attributs, p...

Grafana Alloy et les traces : OTLP, Jaeger et Zipkin vers Tempo

Plongez dans le traitement des traces distribuées. Apprenez à ingérer des traces OTLP, Jaeger ou ...

Grafana Tempo : le backend de traces distribuées à grande échelle

Comprendre le tracing distribué et Grafana Tempo : traces, spans, TraceID, architecture (distribu...

Soutenir

♥ SOUTENIR

Soutenez RousselTM Learning

Les formations, articles, TP et attestations restent gratuits et sans publicité intrusive. Une contribution libre, du montant de votre choix, finance l’hébergement, les environnements de TP et l’écriture de nouveaux contenus.

Contribuer avec PayPal Montant libre · carte bancaire ou compte PayPalEn savoir plus
QR code PayPal
Ou scannez ce QR code avec votre téléphone

Merci, chaque contribution compte !