Aller au contenu

Grafana

Cette page explique le rôle actuel de Grafana dans l'infrastructure de développement Feelbat.

Elle décrit uniquement l'usage observé et les informations connues à ce jour : Grafana sert pour l'instant à consulter les logs des conteneurs Docker de développement.

Pourquoi Grafana est utilisé

Les environnements de développement exécutent plusieurs services dans des conteneurs Docker.

Sans centralisation, l'analyse des logs nécessite de se connecter au serveur et d'interroger chaque conteneur séparément. Grafana apporte une interface unique pour rechercher, filtrer et lire ces logs depuis un navigateur.

Dans l'état actuel, Grafana n'est pas documenté comme un outil de supervision complet de production. Son usage connu est centré sur la consultation des logs Docker de développement.

Accès

Grafana est accessible à l'adresse suivante :

dev.feelbat.tech:9000

Le conteneur Grafana expose actuellement le port suivant :

9000:8000

Cela signifie que le port 9000 du serveur hôte redirige vers le port 8000 du conteneur Grafana.

Information à vérifier

Cette page documente l'état connu depuis la documentation et les informations d'infrastructure disponibles. Les fichiers de configuration Loki et Alloy ne sont pas présents dans ce dépôt de documentation.

Fonctionnement général

La chaîne de collecte actuelle repose sur trois composants :

Composant Rôle
Grafana Interface web utilisée pour consulter et rechercher les logs.
Loki Stockage et indexation des logs.
Alloy Agent de collecte qui récupère les logs des conteneurs Docker et les envoie vers Loki.

Alloy observe les logs produits par les conteneurs Docker de développement. Il les transmet ensuite à Loki, qui les stocke et les rend interrogeables. Grafana se connecte à Loki comme source de données pour afficher les logs dans son interface.

Schéma de flux

flowchart LR
    developer["Développeur"]
    browser["Navigateur<br/>dev.feelbat.tech:9000"]
    grafana["Grafana<br/>conteneur : 8000<br/>hôte : 9000"]
    loki["Loki<br/>stockage des logs"]
    alloy["Alloy<br/>collecte des logs Docker"]
    docker["Conteneurs Docker<br/>environnement de dev"]

    developer --> browser
    browser --> grafana
    grafana --> loki
    alloy --> loki
    docker --> alloy

Lecture des logs

Le flux de lecture est le suivant :

  1. Un développeur ouvre Grafana depuis dev.feelbat.tech:9000.
  2. Grafana interroge Loki.
  3. Loki retourne les logs collectés.
  4. Les logs sont consultés dans l'interface Grafana.

Collecte des logs

Le flux de collecte est le suivant :

  1. Les conteneurs Docker de développement écrivent leurs logs.
  2. Alloy collecte ces logs.
  3. Alloy envoie les logs à Loki.
  4. Loki stocke les logs pour les rendre disponibles à Grafana.

Limites connues

  • Les ports internes de Loki et Alloy ne sont pas documentés dans ce dépôt.
  • Les règles exactes de découverte des conteneurs Docker par Alloy restent à vérifier dans la configuration d'infrastructure.
  • Les règles de rétention des logs Loki ne sont pas documentées ici.
  • L'usage actuel est limité aux logs des conteneurs Docker de développement.

À compléter

  • Ajouter le chemin du fichier de configuration Alloy.
  • Ajouter le chemin du fichier de configuration Loki.
  • Documenter les labels utilisés pour filtrer les logs.
  • Documenter la durée de rétention des logs.
  • Vérifier si Grafana doit rester exposé directement sur dev.feelbat.tech:9000 ou passer par une règle de reverse proxy dédiée.