1. Introduction aux Transformations Grafana #
Comprendre le rôle crucial des transformations dans le cycle de vie de la donnée visualisée.
Le principe du traitement côté client #
Disponible dans : ✓ OSS ✓ Enterprise ✓ Cloud
Les transformations dans Grafana permettent de manipuler le résultat d'une requête après qu'elle a été récupérée de la source de données, mais avant qu'elle ne soit affichée dans le panel. Ce traitement s'effectue dans le navigateur de l'utilisateur. Contrairement aux filtres appliqués directement dans le langage de requête (comme le WHERE en SQL), la transformation agit sur le Data Frame retourné par Grafana.
Pourquoi utiliser les transformations ? #
- Indépendance de la source : Vous pouvez nettoyer des données même si vous n'avez pas la main sur la requête originale.
- Combinaison multi-sources : C'est l'outil idéal pour corréler des données venant de sources hétérogènes (ex: SQL + Prometheus).
- Simplification : Évitez des requêtes SQL ou PromQL trop complexes en déléguant la mise en forme à l'interface de Grafana.
2. Transformations de Structure et de Filtrage #
Comment nettoyer et organiser vos colonnes et séries.
Organize fields (Organiser les champs) #
C'est la transformation la plus utilisée. Elle permet de :
- Renommer : Donner un nom intelligible à une colonne technique (ex: transformer sum_usage_idle_host en CPU Idle).
- Masquer : Cacher des colonnes inutiles au rendu final mais nécessaires au calcul.
- Réordonner : Déplacer les colonnes par simple glisser-déposer pour organiser un tableau.
Filter by name et Filter by value #
Ces deux fonctions permettent d'isoler des données précises :
- Filter by name : Utilise des expressions régulières pour n'afficher que les séries dont le nom correspond à un pattern.
- Filter data by value : Permet de supprimer des lignes basées sur un seuil (ex: masquer toutes les lignes où le statut est 'OK' pour ne voir que les erreurs).
3. Transformations de Calcul et d'Agrégation #
Extraire des statistiques et créer de nouvelles métriques à la volée.
Reduce (Réduire) #
La transformation Reduce réduit une série temporelle entière en une valeur unique. C'est indispensable pour les panels de type Stat ou Gauge. Vous pouvez calculer le Max, le Min, la Moyenne ou même le Dernier point non nul.
Exemple : Transformer un graphique de consommation RAM sur 24h en un indicateur affichant uniquement le pic de consommation maximum.
Add field from calculation #
Cette fonction permet de créer une nouvelle colonne basée sur une opération mathématique entre deux autres colonnes.
Exemple concret : Si vous avez une colonne Espace_Utilisé et Espace_Total, vous pouvez créer une troisième colonne Pourcentage_Utilisation en appliquant la formule (A / B) * 100 directement dans l'interface.
4. Transformations de Combinaison et Jointure #
Unifier des flux de données différents dans une vue cohérente.
Merge et Outer Join #
Ces transformations sont essentielles pour l'unification :
- Merge : Combine plusieurs requêtes ayant la même structure en une seule série (très utile pour fusionner plusieurs index Elasticsearch).
- Outer Join : Joint des données provenant de requêtes différentes sur la base d'un champ commun (souvent le Time ou un ID). Cela permet d'afficher dans un même tableau des informations venant de deux bases de données distinctes.
Group by (Grouper par) #
Similaire au GROUP BY du SQL, cette transformation permet de regrouper les données selon une clé (label ou colonne) et d'appliquer une agrégation sur les autres champs.
Exemple : Vous recevez une liste de conteneurs de tous vos serveurs, et vous utilisez Group by sur le champ 'Host' pour obtenir le nombre de conteneurs par machine.
Mon suivi
Connectez-vous pour suivre votre progression et prendre des notes. Se connecter
💬 Discussions récentes de la formation
- Grafana : une variable « service » qui dépend de la variable « environnement »✓ résolu · 1 réponse(s)
Poser une question sur cette leçon →Voir toutes les discussions de la formation
Glossaire de la formation
Observabilité
La capacité à connaître l'état interne d'un système à partir des données qu'il émet.Ces données sont classées en 3 piliers : logsmétriquestracesprofil...
Grafana
Plateforme open source de visualisation de données et d'analyse de métriques interactives.
Prometheus
Système open source de surveillance et d'alerte, particulièrement adapté pour la collecte de métriques dans des environnements dynamiques (comme Kuber...
APM (Application Performance Monitoring)
Surveillance des performances applicatives pour identifier, diagnostiquer et résoudre les problèmes complexes liés aux performances et à la disponibil...
k6
Outil open source de test de charge (load testing) conçu pour l'ingénierie de performance, permettant d'évaluer la fiabilité et la scalabilité des sys...
Traces distribuées
Technique (issue du pilier des Traces) permettant de suivre le cheminement complet d'une requête à travers de multiples micro-services pour identifier...
Métriques
Mesures numériques collectées à intervalles réguliers (ex: CPU, RAM, temps de réponse) utilisées pour évaluer l'état de santé global d'un système au f...
Alerting
Processus consistant à notifier les équipes (via email, Slack, Teams) lorsqu'un événement spécifique, un dépassement de seuil ou une anomalie est déte...
HTTP Code
Codes de statut HTTP standardisés indiquant le résultat du traitement d'une requête.1xx (Information) : 100 Continue, 101 Switching Protocols.2xx (Suc...
Access Log
Fichier de journalisation enregistrant les requêtes traitées par un serveur web (Apache, Nginx, Lighttpd, etc.). Il permet de tracer l'activité du ser...
Client IP
L'adresse IP de l'utilisateur effectuant la requête vers le serveur web. Lorsqu'un utilisateur passe par un Load Balancer ou un proxy (ex: Cloudflare)...
Timestamp
La date et l'heure exactes auxquelles la requête a été reçue par le serveur.Configuration : %t dans Apache, $time_local ou $time_iso8601 dans Nginx.
Request
La ligne de requête initiale du client. Elle comprend généralement la méthode HTTP (ex: GET), l'URL demandée et la version du protocole HTTP.Configura...
Status Code
Le code de statut HTTP final renvoyé par le serveur au client (ex : 200 pour un succès, 404 pour ressource non trouvée).Configuration : %>s dans Apach...
Size
Le volume des données renvoyées au client, mesuré en octets (généralement sans les en-têtes HTTP).Configuration : %b ou %O dans Apache, $body_bytes_se...
Referrer
L'URL de la page web depuis laquelle le client a cliqué ou suivi un lien pour accéder à la ressource actuelle.Configuration : %{Referer}i dans Apache,...
User-Agent
Les informations d'identification fournies par le client concernant son navigateur, son système d'exploitation et son appareil. Sa structure standard ...
Response Time
La durée totale prise par le serveur pour traiter la requête et renvoyer la réponse au client.Configuration : %D (microsecondes) ou %T (secondes) dans...
Grafana Loki
Système de journalisation (logs) multi-tenant, hautement disponible et inspiré de Prometheus. Il est conçu pour être très économe en ressources en n'i...
Articles recommandés
Maîtriser les Variables dans Grafana : Dynamisez vos Tableaux de Bord
Apprenez à utiliser les variables pour créer des tableaux de bord interactifs et réutilisables. D...
La stack LGTM (Loki, Grafana, Tempo, Mimir) : architecture et mise en place
Comprendre la stack LGTM de Grafana Labs : Loki pour les logs, Grafana pour la visualisation, Tem...
Grafana : maîtriser les requêtes (PromQL, LogQL, SQL et expressions)
Construire des requêtes efficaces dans Grafana : éditeur de requêtes, Query Inspector, PromQL, Lo...
Les Data Sources dans Grafana : Connectez et unifiez vos données
Apprenez à étendre les capacités de Grafana via les Data Sources. Découvrez les plugins essentiel...
Coûts, usage et Private Data Source Connect dans Grafana Cloud
Suivre la consommation de Grafana Cloud et interroger des sources de données privées sans les exp...
Grafana Provisioning : Automatisez la gestion de vos tableaux de bord et sources de données
Découvrez comment utiliser le provisioning de Grafana pour gérer vos configurations (dashboards, ...
Grafana Assistant : L'IA au service de l'observabilité
Découvrez Grafana Assistant, l'intelligence artificielle intégrée à Grafana Cloud. Apprenez comme...
Grafana Cloud : démarrer avec la plateforme managée (Mimir, Loki, Tempo, Alloy)
Découvrir Grafana Cloud : création d'une stack, offre gratuite, envoi de métriques, logs et trace...
Cross-dashboard variables Grafana : partager des variables entre dashboards
Créez une fois vos variables Grafana et réutilisez-les partout : portée globale ou par dossier, a...