7.1 KiB
7.1 KiB
Documentation - Tests de Santé des URLs LeCoffre Node
📋 Vue d'ensemble
Ce document décrit les scripts de vérification de santé des URLs pour LeCoffre Node, intégrés dans les processus de backup et de production.
🔧 Scripts Disponibles
1. url-health-check.sh
Script principal de test d'URLs
Usage :
cd /home/debian/4NK_env/scripts/lecoffre_node
./url-health-check.sh
Fonctionnalités :
- Test de toutes les URLs internes (services Docker)
- Test de toutes les URLs externes (domaine public)
- Test des APIs externes (backend services)
- Test des WebSockets externes
- Test des services externes (dépendances)
- Rapport détaillé avec codes de retour
Codes de retour :
0
: Toutes les URLs sont accessibles1
: Certaines URLs ne sont pas accessibles (majorité fonctionne)2
: Trop d'URLs ne sont pas accessibles
2. production-health-check.sh
Script de vérification complète pour la production
Usage :
cd /home/debian/4NK_env/scripts/lecoffre_node
./production-health-check.sh
Fonctionnalités :
- État des services Docker
- Espace disque système
- Mémoire système
- Volumes Docker
- Tests d'URLs complets
- Génération d'un rapport Markdown détaillé
3. backup-data.sh
(Modifié)
Script de backup avec intégration des tests d'URLs
Usage :
cd /home/debian/4NK_env/scripts/lecoffre_node
./backup-data.sh
Nouvelles fonctionnalités :
- Test des URLs avant la sauvegarde
- Test des URLs après la sauvegarde
- Logs des tests intégrés dans le backup
- Rapport de cohérence avant/après
📊 URLs Testées
URLs Internes (Services Docker)
Service | URL | Code Attendu | Description |
---|---|---|---|
BlindBit Oracle | http://localhost:8000/tweaks/1 |
200 | API BlindBit |
SDK Storage | http://localhost:8081/health |
200 | Health check SDK Storage |
SDK Relay | http://localhost:8091/ |
200 | Interface WebSocket SDK Relay |
SDK Relay | http://localhost:8090/ |
200 | Interface HTTP SDK Relay |
LeCoffre Frontend | http://localhost:3004/ |
200,301,302,307,308 | Frontend racine |
LeCoffre Frontend | http://localhost:3004/login |
200,301,302,307,308 | Page de login |
LeCoffre Frontend | http://localhost:3004/lecoffre/ |
200,301,302,307,308 | Application LeCoffre |
IHM Client | http://localhost:3003/ |
200 | Interface IHM Client |
Grafana | http://localhost:3005/api/health |
200 | Health check Grafana |
Grafana | http://localhost:3005/ |
200,301,302 | Dashboard Grafana |
Loki | http://localhost:3100/ready |
200 | Health check Loki |
Status API | http://localhost:3006/api |
200 | API de statut |
URLs Externes (Domaine Public)
Service | URL | Code Attendu | Description |
---|---|---|---|
Site Principal | https://dev4.4nkweb.com/ |
200,301,302 | Site principal |
Page de Statut | https://dev4.4nkweb.com/status/ |
200 | Page de statut des services |
Dashboard Grafana | https://dev4.4nkweb.com/grafana/ |
200,301,302 | Dashboard Grafana public |
Application LeCoffre | https://dev4.4nkweb.com/lecoffre/ |
200,301,302 | Application LeCoffre publique |
Login LeCoffre | https://dev4.4nkweb.com/lecoffre/login |
200,301,302 | Page de login publique |
Callback Auth | https://dev4.4nkweb.com/lecoffre/authorized-client |
200,301,302 | Callback d'authentification |
APIs Externes (Backend Services)
Service | URL | Méthode | Code Attendu | Description |
---|---|---|---|---|
API Backend | https://dev3.4nkweb.com/api/v1/health |
GET | 200 | Health check API backend |
API Backend | https://dev3.4nkweb.com/api/v1/status |
GET | 200 | Status API backend |
IdNot State | https://dev3.4nkweb.com/api/v1/idnot/state |
POST | 200 | Endpoint d'état IdNot |
WebSockets Externes
Service | URL | Description |
---|---|---|
Bootstrap Relay | wss://dev3.4nkweb.com/ws/ |
WebSocket de relais bootstrap |
Services Externes (Dépendances)
Service | URL | Code Attendu | Description |
---|---|---|---|
Mempool Signet | https://mempool2.4nkweb.com/ |
200,301,302 | Explorateur de blockchain |
Service IdNot | https://qual-connexion.idnot.fr/ |
200,301,302 | Service d'authentification IdNot |
IdNot Auth | https://qual-connexion.idnot.fr/IdPOAuth2/authorize/idnot_idp_v1 |
200,301,302 | Endpoint d'autorisation IdNot |
📁 Structure des Fichiers Générés
Backup avec Tests d'URLs
./backups/
├── lecoffre_backup_YYYYMMDD_HHMMSS.tar.gz
├── url-health-check-pre-backup-YYYYMMDD_HHMMSS.log
└── url-health-check-post-backup-YYYYMMDD_HHMMSS.log
Production Health Check
./reports/
├── production-health-report-YYYYMMDD_HHMMSS.md
└── url-tests-production-YYYYMMDD_HHMMSS.log
🔍 Interprétation des Résultats
Codes de Statut HTTP
- 200 : OK - Service accessible et fonctionnel
- 301, 302, 307, 308 : Redirections - Acceptables pour certains services
- 404 : Not Found - Service non trouvé ou mal configuré
- 500 : Internal Server Error - Erreur serveur
- 000 : Connection Failed - Impossible de se connecter
Codes de Retour des Scripts
- 0 : Succès complet
- 1 : Succès partiel (certaines URLs échouent)
- 2 : Échec (trop d'URLs échouent)
🚨 Dépannage
URLs Internes Non Accessibles
- Vérifier que les services Docker sont démarrés
- Vérifier les ports et la configuration réseau
- Consulter les logs des services :
docker logs <service_name>
URLs Externes Non Accessibles
- Vérifier la configuration nginx
- Vérifier les certificats SSL
- Vérifier la connectivité réseau externe
- Consulter les logs nginx
APIs Non Accessibles
- Vérifier la configuration CORS
- Vérifier les headers d'authentification
- Vérifier la connectivité vers dev3.4nkweb.com
- Consulter les logs du backend
📝 Exemples d'Utilisation
Test Rapide des URLs
cd /home/debian/4NK_env/scripts/lecoffre_node
./url-health-check.sh
Rapport Complet de Production
cd /home/debian/4NK_env/scripts/lecoffre_node
./production-health-check.sh
cat ./reports/production-health-report-*.md
Backup avec Tests d'URLs
cd /home/debian/4NK_env/scripts/lecoffre_node
./backup-data.sh
ls -la ./backups/
Surveillance Continue
# Ajouter dans un cron pour surveillance automatique
0 */6 * * * cd /home/debian/4NK_env/scripts/lecoffre_node && ./url-health-check.sh > /var/log/url-health-check.log 2>&1
🔧 Maintenance
Mise à Jour des URLs
Pour ajouter ou modifier des URLs testées :
- Éditer
url-health-check.sh
- Ajouter/modifier les sections appropriées
- Tester le script
- Mettre à jour cette documentation
Configuration des Timeouts
Les timeouts par défaut sont :
- URLs internes : 5-10 secondes
- URLs externes : 10-15 secondes
- WebSockets : 5 secondes
Pour modifier les timeouts, éditer les paramètres dans les fonctions test_url()
et test_websocket()
.
Document créé le 2025-09-25 Version : 1.0 Usage : Scripts de santé LeCoffre Node