[TP] Projet 3 : Manipulation de la donnée


Pour ce TP, nous allons voir comment utiliser la visualisation de type 'Table' pour sublimer nos données.

Ce que vous allez apprendre dans ce TP :
  • Récupérer les données au format JSON
  • Comprendre la notion de paramètres par défaut
  • Surcharger les paramètres par défaut
  • Configurer un alignement en fonction d'un critère précis
  • Afficher une image à la place de l'URL de cette dernière
  • Afficher une gauge à la place de la valeur de cette dernière
  • Appliquer un 'Tresholds'
  • Appliquer un 'Value mappings'
  • Ajouter un lien dynamique
  • Modifier le nom des colonnes
  • Modifier l'ordre des colonnes
  • Masquer une colonne
  • Modifier le nom des colonnes

Introduction

Ce projet a pour objectif de vous apprendre à manipuler visualisation sous forme de tableau et à y appliquer différentes transformations: alignement, tri, image, ...
INFORMATION : La visualisation de type tableau à le même fonctionnement par défaut que les tableurs par exemple il alignera toujours les nombres sur la droite et les textes sur la gauche.
Pour cela, on va travailler avec ces données(Voir les données) et les afficher sous cette forme Dans Grafana (Voir le rendu souhaité)

Requêtes


Ce que vous allez apprendre dans cette section :
  • Récupérer les données au format JSON

  1. Récupérer les données
    Vous devez utiliser la source de donnee Infinity pour récupérer les données sur le repository à l'adresse : https://github.com/RousselTM/grafana-formation/blob/main/tp/data/projet3.json.
    INFORMATION : Pour être utilisable au format JSON il doit être transformé en RAW.

Visualisations


Ce que vous allez apprendre dans cette section :
  • Comprendre la notion de paramètres par défaut
  • Surcharger les paramètres par défaut
  • Configurer un alignement en fonction d'un critère précis
  • Afficher une image à la place de l'URL de cette dernière
  • Afficher une gauge à la place de la valeur de cette dernière
  • Appliquer un 'Tresholds'
  • Appliquer un 'Value mappings'
  • Ajouter un lien dynamique
  • Modifier le nom des colonnes

  1. Type de visualisation
    Vous devez choisir une visualisation qui correspond à une représentation sous forme de tableau
  2. Titre et description
    Vous devez définir, pour la visualisation, comme titre 'Mon premier tableau' et comme description 'Description de mon premier tableau'
  3. L'alignement
    Vous devez modifier l'alignement par défaut pour qu'il corresponde à l'image du résultat attendu. Le contenu de toutes les cellules sont centrées à l'exception du champ 'category' qui a un alignement à droite.
  4. Le renommage
    Vous devez utiliser la partie 'Visualization' pour renommer la colonne 'category' en 'Catégorie'.
    INFORMATION : Plus bas on vera qu'on peut faire la même action avec une autre méthode: les transformations.
  5. Les liens
    Grafana vous permet de créer l'interactivité Dans votre tableau avec les liens. Vous devez donc ajouter un lien pour que lorsqu'on clique sur une ligne il renvoie sur la page de la formation. Le lien doit être donc être sous la forme https://elearning.rousseltm.fr/training_chapter?id=ID, sahant que 'ID' doit correspondre au contenu du champ 'id'.
  6. Le 'Mapping'
    Grafana vous permet de transformer le contenu de votre représentation. Vous devez créer un mapping pour demander à Grafana de transformer le texte 'true' en 'Oui' et 'false' en 'Non'. Vous devez aussi indiquer que les valeurs 'Oui' ont la couleur 'violette' et 'Non' la couleur transparente. On combinera aussi un 'override' pour lui demander à Grafana d'afficher toute la ligne en fonction de la couleur de la colonne 'certification'.
  7. Le 'Tresholds'
    Grafana vous permet de colorier des nombres en fonction de leurs valeurs. Vous devez donc ajouter des 'Tresholds' pour qu'il colore les nombres sous cette forme : rouge: défaut, orange: > 50000, jaune: > 700000, vert: > 800000.
  8. Mode coloration
    Grafana vous permet de colorier (texte ou fond) une cellule, une ligne en fonction d'une valeur. Vous devez donc demander à Grafana de colorer la ligne en fonction du contenu de la 'certification' et lui demande de l'appliquer à toute la ligne. Pour rappel, Dans l'étape précédente on avait défini deux couleurs donc pas besoin de les préciser.
  9. Mode jauge
    Grafana vous permet d'afficher un nombre sous forme de jauge pour visuelement comparer des valeurs. Vous devez donc afficher le nombre de vue (colonne vues) en mode jauge

Transformations


Ce que vous allez apprendre dans cette section :
  • Modifier l'ordre des colonnes
  • Masquer une colonne
  • Modifier le nom des colonnes

  1. La méthode HTTP
    En fonction de l'appel que vous souhaitez faire, Dans la documentationde l'API, on vous indiquera la méthode à utiliser.
    INFORMATION : Par défaut Infinity va envoyer vos requêtes avec la méthode 'GET'. Vous devez trouver l'option pour la modifier ?
  2. L'authentification
  3. L'entête accept
    Grafana va se baser sur 'curl' pour requêter vos URLs pour le plugin infinity. En fonction du format que vous souhaitez obtenir il faut donc le demander à l'API via une entête.
    INFORMATION : Je vous invite à vous renseigner sur les différentes valeurs mais Dans notre cas la clé(key) c'est 'accept' et comme valeur(value):
    • JSON : application/json
    • CSV : text/csv
    Comment configurer ce paramètre Dans Grafana pour le plugin Infinity?

Niveau de difficulté: (3/5)

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...

Articles recommandés

Comprendre la notion de score

Le concept de score va permettre à Elasticsearch de classer vos documents par...

Différences entre Technologies et Services dans Dynatrace

Dans Dynatrace, les concepts de 'Technologie' et de 'Services' aident à organ...

Dynatrace : Différences entre SQL Modifications, SQL Queries or Procedures, et SQL Transactions

Cet article détaille les différences entre trois concepts essentiels dans l'e...

Types de consommation de licence

Comprendre l'évolution de la facturation dans Dynatrace : la différence entre...

Les Types de Services Dynatrace : Comprendre et Optimiser Votre Surveillance Applicative

Découvrez les différents types de services que Dynatrace peut surveiller, leu...

Les SLO Dynatrace : Comprendre et Gérer les Objectifs de Niveau de Service

Découvrez comment utiliser les SLO (Service Level Objectives) dans Dynatrace ...

Apdex vs Core Web Vitals

Découvrez les différences entre Apdex et Core Web Vitals, deux indicateurs de...

Comprendre Elastic Common Schema(ECS)

Comme toujours dans nos missions de conseil, nous recommandons aux entreprise...

Pourquoi collecter des métriques

Découvrez les raisons clés pour collecter des métriques avec des exemples con...

Les types de métriques dans Prometheus

Découvrez en détail les quatre types de métriques supportés par Prometheus (C...

Grail : Dynatrace Data Lakehouse

Désormais vous disposez dans Dynatrace (SaaS) d'un Data Lakehouse nommé Grail...

Introduction à PromQL

Apprenez à maîtriser PromQL, le langage de requête utilisé dans Prometheus, a...

Dynatrace OneAgent : tags, props, vars CLI

Pense‑bête des commandes CLI/API pour gérer tags, propriétés, variables d'env...

Grafana Alloy : Collecte et Transformation de Télémétrie

Apprenez à utiliser Grafana Alloy pour collecter, transformer et acheminer lo...

Grafana Alloy : Collecter les métriques système et les logs locaux

Découvrez comment configurer Grafana Alloy pour superviser le serveur sur leq...

Grafana Alloy : L'importance de l'auto-supervision (Self-Monitoring)

Découvrez pourquoi et comment configurer Grafana Alloy pour qu'il se supervis...

Grafana Alloy : Comprendre et exploiter l'Interface Utilisateur (UI)

Découvrez comment activer, sécuriser et utiliser l'interface web intégrée de ...

OTLP expliqué : comprendre le protocole OpenTelemetry

Découvrez le protocole OTLP expliqué simplement. Comprendre les différences e...

Grafana Alloy : Guide complet pour collecter métriques, logs et traces

Tutoriel complet sur Grafana Alloy. Découvrez comment installer, configurer e...

Grafana Alloy : Syntaxe et Configuration (Alloy Language)

Maîtrisez la syntaxe déclarative de Grafana Alloy (langage River), apprenez à...

Grafana Alloy : Collecte de Métriques (Prometheus & Ecosystem)

Apprenez à configurer Grafana Alloy pour collecter, transformer et envoyer de...

C'est quoi l'observabilité

La capacité à connaître l'état interne d'un système à partir des données que ...

Grafana Alloy : Gestion des Logs avec Loki

Découvrez comment configurer Grafana Alloy pour lire des fichiers de logs, jo...

Grafana Alloy : Gestion des Traces avec Tempo

Plongez dans le traitement des traces distribuées. Apprenez à ingérer des tra...

Grafana Alloy : Profilage Continu avec Pyroscope

Découvrez comment configurer le profilage continu (Continuous Profiling) dans...

Grafana Alloy : Déploiement Avancé et Clustering

Apprenez à gérer les déploiements à grande échelle de Grafana Alloy. Configur...

Grafana Assistant : L'IA au service de l'observabilité

Découvrez Grafana Assistant, l'intelligence artificielle intégrée à Grafana C...

Grafana Alloy vs OpenTelemetry Collector : Lequel choisir ?

Comparaison détaillée entre Grafana Alloy et l'OpenTelemetry Collector. Décou...

Grafana Alloy vs Dynatrace ActiveGate : Lequel choisir ?

Comparaison entre Grafana Alloy et Dynatrace ActiveGate. Comprenez les différ...

Grafana Alloy vs Grafana Agent vs Promtail : Lequel choisir ?

Découvrez l'évolution des collecteurs de télémétrie de l'écosystème Grafana. ...

Référence des Composants Grafana Alloy

Un guide de référence complet sur tous les composants disponibles dans Grafan...

Les types de transactions dans les base de données

Cet article détaille les différences entre trois concepts essentiels dans l'e...