# REX - Implémentation des Dashboards Grafana ## Résumé Implémentation réussie de dashboards Grafana spécialisés pour le monitoring des services LeCoffre Node. ## Dashboards Implémentés ### 1. **Bitcoin Miner - Détails** (UID: `bitcoin-miner-detailed`) - **Objectif**: Monitoring détaillé du mineur Bitcoin Signet - **Métriques**: - Blocs minés par minute - Hashrate du mineur - Erreurs du mineur (1h) - Distribution des niveaux de log - Historique des blocs minés - **Panneaux**: 5 panneaux spécialisés ### 2. **LeCoffre Backend - Monitoring** (UID: `lecoffre-backend`) - **Objectif**: Monitoring de l'API backend LeCoffre - **Métriques**: - Requêtes HTTP par status code - Endpoints les plus utilisés - Temps de réponse moyen - Erreurs et succès (1h) - Distribution des méthodes HTTP - Erreurs récentes - **Panneaux**: 8 panneaux complets ### 3. **SDK Services - Monitoring** (UID: `sdk-services`) - **Objectif**: Monitoring des services SDK (relay, signer, storage) - **Métriques**: - Messages par service SDK - Transactions relay - Signatures signer - Erreurs par service (1h) - Total logs SDK - Erreurs récentes SDK - **Panneaux**: 8 panneaux spécialisés ### 4. **Frontend Services - Monitoring** (UID: `frontend-services`) - **Objectif**: Monitoring des services frontend (lecoffre-front, ihm_client) - **Métriques**: - Requêtes HTTP par frontend - Activité Vite (IHM Client) - Erreurs par service (1h) - Total logs frontend - Erreurs Vite - Erreurs récentes frontend - **Panneaux**: 7 panneaux dédiés ### 5. **Bitcoin Services - Monitoring** (UID: `bitcoin-services`) - **Objectif**: Monitoring des services Bitcoin (bitcoin-signet, blindbit-oracle) - **Métriques**: - Mises à jour de la chaîne Bitcoin - Détection de tweak (BlindBit) - Erreurs Bitcoin et BlindBit (1h) - Nouveaux blocs et silent payments - Erreurs Bitcoin services - **Panneaux**: 7 panneaux spécialisés ## Configuration Technique ### Datasource Loki - **URL**: `http://loki:3100` - **Type**: `loki` - **Accès**: `proxy` - **UID**: `loki` - **Configuration simplifiée** pour éviter les erreurs de provisioning ### Scripts Améliorés - **`test-dashboards.sh`**: Script de test complet avec headers Loki - **Headers ajoutés**: `X-Scope-OrgID: anonymous` pour l'accès Loki - **Tests inclus**: API Loki, logs des services, rapport de santé ## Résolution des Problèmes ### Problème 1: Configuration Loki Complexe - **Symptôme**: Erreur "Datasource provisioning error: data source not found" - **Cause**: Configuration JSON complexe avec derivedFields - **Solution**: Simplification de la configuration Loki ### Problème 2: Access Proxy vs Server - **Symptôme**: Erreurs 502 Bad Gateway via nginx - **Cause**: Tentative d'accès direct via URL externe - **Solution**: Utilisation de `access: proxy` avec URL interne Docker ### Problème 3: Headers Loki Manquants - **Symptôme**: Erreurs d'authentification Loki - **Cause**: Headers X-Scope-OrgID manquants - **Solution**: Ajout des headers dans les requêtes API ## Accès et Utilisation ### URL d'Accès - **Grafana**: `https://dev4.4nkweb.com/grafana/` - **Identifiants**: `admin` / `admin123` ### Liens Directs - Vue d'ensemble: `https://dev4.4nkweb.com/grafana/d/lecoffre-overview` - Bitcoin Miner: `https://dev4.4nkweb.com/grafana/d/bitcoin-miner-detailed` - Backend LeCoffre: `https://dev4.4nkweb.com/grafana/d/lecoffre-backend` - Services SDK: `https://dev4.4nkweb.com/grafana/d/sdk-services` - Services Frontend: `https://dev4.4nkweb.com/grafana/d/frontend-services` - Services Bitcoin: `https://dev4.4nkweb.com/grafana/d/bitcoin-services` ## Validation ### Tests Réussis - ✅ **8 dashboards** accessibles et fonctionnels - ✅ **Configuration Loki** opérationnelle - ✅ **Scripts de test** améliorés et fonctionnels - ✅ **Accès externe** via nginx HTTPS - ✅ **Monitoring temps réel** des services ### Métriques Disponibles - **Temps réel**: Refresh 5s sur tous les dashboards - **Historique**: 1h par défaut, configurable - **Logs centralisés**: Via Loki + Promtail - **Erreurs**: Détection et affichage en temps réel ## Améliorations Futures ### Dashboards Avancés 1. **Alertes automatiques** sur erreurs critiques 2. **Métriques personnalisées** par service 3. **Corrélations** entre services 4. **Rapports automatiques** de performance ### Configuration 1. **Variables de template** pour filtrage dynamique 2. **Annotations** sur événements importants 3. **Drill-down** entre dashboards 4. **Export** de rapports PDF ## Conclusion ✅ **Mission accomplie**: Tous les dashboards sont implémentés, fonctionnels et accessibles ✅ **Monitoring complet**: Couverture de tous les services critiques ✅ **Accès externe**: Disponible via HTTPS avec authentification ✅ **Scripts améliorés**: Tests et validation automatisés Le système de monitoring Grafana est maintenant opérationnel et prêt pour la production.