Publié le : 10/05/2026 à 10:00

Apprenez à configurer Grafana Alloy pour collecter, transformer et envoyer des métriques en utilisant l'écosystème Prometheus et le standard OpenTelemetry (OTLP).

1. Discovery

Auto-détection des cibles via Kubernetes, Consul ou fichiers statiques.

Trouver dynamiquement les cibles

Dans les environnements modernes, les adresses IP et les ports des services changent constamment. Alloy intègre des composants de découverte (Service Discovery) issus de Prometheus. Que ce soit via discovery.kubernetes, discovery.consul, ou de simples fichiers statiques, Alloy identifie automatiquement les cibles à interroger, avec tous leurs labels associés.

2. Scraping

Configuration du composant prometheus.scrape.

Collecter les métriques

Une fois les cibles identifiées, le composant prometheus.scrape entre en jeu. Il se connecte régulièrement aux endpoints /metrics des cibles, récupère les données au format Prometheus, applique d'éventuelles règles de relabeling (pour filtrer ou modifier les labels avant l'ingestion) et transmet les séries temporelles au composant d'expédition.

3. Remote Write

Envoi des données vers Grafana Cloud ou une instance locale.

L'expédition des métriques

Le composant prometheus.remote_write prend les métriques scrappées et les pousse vers une base de données de séries temporelles compatible, comme Grafana Mimir, Prometheus (avec remote_write activé), ou Grafana Cloud. Il gère l'authentification (Basic Auth, Bearer Token), la mise en mémoire tampon (WAL) pour éviter les pertes de données en cas de coupure réseau, et la compression.


Bonne Pratique : Configurez toujours le composant wal (Write-Ahead Log) pour vos expéditeurs. Cela garantit qu'en cas d'indisponibilité de votre base de données, Alloy met en cache les métriques sur le disque et les réexpédie automatiquement dès que la connexion est rétablie.
Erreur Courante : Scraper des métriques avec une forte cardinalité (ex: inclure un user_id ou une session_id dans les labels d'une métrique Prometheus) sans utiliser les composants de relabel pour les filtrer. Cela va entraîner une explosion de la cardinalité et saturer votre backend.
prometheus.remote_write "default" {
  endpoint {
    url = "https://prometheus-prod.grafana.net/api/prom/push"
  }
  wal {
    truncate_frequency = "2h"
    max_keepalive_time = "5m"
  }
}

4. Interopérabilité OTLP

Recevoir et transformer des métriques OpenTelemetry.

Le pont entre Prometheus et OTLP

Alloy brille par sa capacité à unifier les écosystèmes. Avec les composants otelcol, Alloy peut agir comme un collecteur OpenTelemetry, recevant des métriques au format OTLP envoyées directement par vos applications instrumentées, les convertir à la volée, et les intégrer dans votre pipeline d'expédition Prometheus existant.

Lien copié dans le presse-papiers !