RousselTMLEARNING

Article · Traefik: From Discovery to Expertise

Traces

This article is available in French.

1. Pourquoi tracer le proxy #

Le premier maillon de la requête.

Principe #

Traefik voit chaque requête en premier. En créant le span racine et en transmettant l'en-tête traceparent (W3C Trace Context), il permet de suivre une requête depuis l'entrée jusqu'à la base de données et de distinguer le temps passé dans le proxy de celui passé dans les applications.

Traefik et le tracing distribué
Les applications doivent elles aussi être instrumentées et lire le contexte reçu.

2. Configuration (Traefik v3) #

OpenTelemetry natif.

Configuration statique #

tracing:
  serviceName: traefik
  sampleRate: 0.2                 # 20 % des requêtes
  addInternals: false             # ne pas tracer le tableau de bord ni /ping
  otlp:
    grpc:
      endpoint: otel-collector:4317
      insecure: true
Changement en v3 : Traefik v3 n'exporte plus directement vers Jaeger, Zipkin ou Datadog : il émet en OTLP, et le Collector OpenTelemetry route vers le backend de votre choix.

Vérifier #

curl -s -H 'traceparent: 00-4bf92f3577b34da6a3ce929d0e0e4736-00f067aa0ba902b7-01' https://app.exemple.fr/ -o /dev/null
# puis rechercher la trace 4bf92f3577b34da6a3ce929d0e0e4736 dans Jaeger ou Tempo

3. Lire et exploiter les traces #

Ce que montrent les spans Traefik.

Analyse #

  • Le span de Traefik contient le routeur, le service, le statut et l'adresse du backend.
  • Un écart important entre la durée du span Traefik et celle du span applicatif révèle une attente côté proxy ou réseau (connexions, TLS, file d'attente).
  • Le TraceId figure aussi dans les access logs : on passe du log à la trace.
Bonne Pratique : Échantillonnez en tête dans Traefik à un taux raisonnable et conservez 100 % des erreurs grâce à l'échantillonnage en queue du Collector (tail sampling).

📄 Traefik : le tracing distribué avec OpenTelemetry →

My progress

  • ⏱ Estimated time : ≈ 4 min

Sign in to track your progress and take notes. Sign in

💬 Ask a question

Recommended Articles

Traefik : les métriques avec Prometheus et OpenTelemetry

Exposer les métriques de Traefik (Prometheus ou OTLP), comprendre les séries par entrypoint, rout...

Traefik : les logs (journaux applicatifs et access logs)

Configurer les deux journaux de Traefik : le journal de fonctionnement (niveaux, format) et les a...

Traefik : sécuriser et transformer les requêtes avec les middlewares (BasicAuth, ForwardAuth…)

Les middlewares Traefik modifient les requêtes et réponses entre le routeur et le service : authe...

Traefik comme Ingress Controller pour Kubernetes (Helm, IngressRoute, Gateway API)

Installer Traefik dans Kubernetes avec Helm et publier des applications avec Ingress, les CRD Ing...

L'API de Traefik : inspecter la configuration et sécuriser le tableau de bord

Utiliser l'API REST de Traefik pour inspecter routeurs, services, middlewares et entrypoints, l'e...

Traefik : vue d'ensemble, architecture et premier déploiement

Découvrir Traefik : reverse proxy et load balancer cloud-native, entrypoints, routers, services, ...

Traefik : les providers (Docker, Kubernetes, Nomad, Consul, fichiers, clés-valeurs)

Les providers alimentent la configuration dynamique de Traefik : découverte des services Docker, ...

Les plugins Traefik : l'exemple de CrowdSec pour bloquer les attaques

Étendre Traefik avec des plugins (catalogue officiel, interpréteur Yaegi), puis protéger ses appl...

Stratégies de déploiement avec Traefik : blue/green, canary et rolling

Mettre en œuvre les stratégies de déploiement avec Traefik : rolling update par l'orchestrateur, ...

Support us

♥ SUPPORT US

Support RousselTM Learning

Courses, articles, labs and certificates stay free with no intrusive ads. A voluntary contribution, of any amount you choose, pays for hosting, lab environments and new content.

Contribute with PayPal Any amount · card or PayPal accountLearn more
QR code PayPal
Or scan this QR code with your phone

Thank you, every contribution counts!