align for IA agents + grafana
This commit is contained in:
parent
d09901820b
commit
1c7e23152d
@ -98,17 +98,28 @@ Les configurations ngnix doivent toutes être cenralisées dans lecoffre_node/co
|
|||||||
### Lancement des services
|
### Lancement des services
|
||||||
|
|
||||||
30. Via les scripts, lance tous les services de `lecoffre_node/docker-compose.yml`.
|
30. Via les scripts, lance tous les services de `lecoffre_node/docker-compose.yml`.
|
||||||
31. Corriger toutes les erreurs, petites et grosses, **sans désactivation**, **sans simplification**, **sans contournement**.
|
31. **Utiliser le système de monitoring et progression** :
|
||||||
32. Tester.
|
- Utiliser `./scripts/start-with-progress.sh` pour le démarrage ordonné avec suivi
|
||||||
33. Analyser de nouveau les logs.
|
- Utiliser `./scripts/monitor-progress.sh` pour l'aperçu des services
|
||||||
34. Vérifier que les logs ne contiennent pas de données personnelles ou sensibles.
|
- Utiliser `./scripts/watch-progress.sh` pour la surveillance en temps réel
|
||||||
35. Corriger à nouveau si nécessaire (jusqu'à l'absence totale d'erreurs)
|
- Utiliser `./scripts/logs-with-progress.sh` pour les logs avec progression
|
||||||
36. Mettre à jour la documentation avec le **retour d’expérience** à chaque fois par une mise à jour de `docs/REX.md`.
|
32. **Surveiller la progression des services critiques** :
|
||||||
37. Recommencer si nécessaire pour obtenir un déploiement fluide et parfait.
|
- **Bitcoin IBD** : Suivre la progression des blocs téléchargés
|
||||||
38. Assures toi d'être à jour pour le service grafana
|
- **BlindBit** : Surveiller l'état du scan des blocs
|
||||||
39. Assures toi d'avoir bien synchroniser la conf ngnix et relance le serveur ngnix
|
- **SDK Relay** : Attendre la synchronisation Bitcoin avant le démarrage
|
||||||
40. Vérifie que Loki, Promtail et Grafana sont ok avec des dashboard alimentés
|
- **Services LeCoffre** : Vérifier les dépendances avant démarrage
|
||||||
41. Vérifie qu'il n'y a aucun conflit de ports
|
33. Corriger toutes les erreurs, petites et grosses, **sans désactivation**, **sans simplification**, **sans contournement**.
|
||||||
|
34. Tester.
|
||||||
|
35. Analyser de nouveau les logs avec les outils de monitoring.
|
||||||
|
36. Vérifier que les logs ne contiennent pas de données personnelles ou sensibles.
|
||||||
|
37. Corriger à nouveau si nécessaire (jusqu'à l'absence totale d'erreurs)
|
||||||
|
38. Mettre à jour la documentation avec le **retour d'expérience** à chaque fois par une mise à jour de `docs/REX.md`.
|
||||||
|
39. Recommencer si nécessaire pour obtenir un déploiement fluide et parfait.
|
||||||
|
40. Assures toi d'être à jour pour le service grafana
|
||||||
|
41. Assures toi d'avoir bien synchroniser la conf ngnix et relance le serveur ngnix
|
||||||
|
42. Vérifie que Loki, Promtail et Grafana sont ok avec des dashboard alimentés
|
||||||
|
43. Vérifie qu'il n'y a aucun conflit de ports
|
||||||
|
44. **Tester l'accès externe** : Vérifier toutes les URLs publiques depuis l'extérieur
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@ -222,6 +233,60 @@ docker compose --env-file .env.master up
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
## Système de Monitoring et Progression
|
||||||
|
|
||||||
|
### Healthchecks Informatifs
|
||||||
|
|
||||||
|
Tous les services disposent maintenant de healthchecks qui affichent des informations de progression :
|
||||||
|
|
||||||
|
- **Bitcoin** : `Bitcoin IBD: 34729/136548 blocks (101819 remaining) - 25%`
|
||||||
|
- **BlindBit** : `BlindBit ready: Oracle service responding`
|
||||||
|
- **SDK Relay** : `SDK Relay IBD: Waiting for Bitcoin sync to complete`
|
||||||
|
- **Autres services** : Messages clairs sur l'état de démarrage
|
||||||
|
|
||||||
|
### Scripts de Monitoring
|
||||||
|
|
||||||
|
**Scripts disponibles** :
|
||||||
|
- `./scripts/monitor-progress.sh` : Aperçu complet de tous les services
|
||||||
|
- `./scripts/watch-progress.sh` : Surveillance en temps réel
|
||||||
|
- `./scripts/logs-with-progress.sh` : Logs avec informations de progression
|
||||||
|
- `./scripts/start-with-progress.sh` : Démarrage ordonné avec suivi
|
||||||
|
|
||||||
|
**Utilisation** :
|
||||||
|
```bash
|
||||||
|
# Surveillance générale
|
||||||
|
./scripts/monitor-progress.sh
|
||||||
|
|
||||||
|
# Surveillance en temps réel
|
||||||
|
./scripts/watch-progress.sh
|
||||||
|
|
||||||
|
# Logs avec progression
|
||||||
|
./scripts/logs-with-progress.sh bitcoin -p -f
|
||||||
|
|
||||||
|
# Démarrage avec suivi
|
||||||
|
./scripts/start-with-progress.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
### Ordre de Démarrage Critique
|
||||||
|
|
||||||
|
1. **Tor** → 2. **Bitcoin** → 3. **BlindBit** → 4. **SDK Storage** → 5. **SDK Relay** → 6. **SDK Signer** → 7. **IHM Client** → 8. **LeCoffre Backend** → 9. **LeCoffre Frontend** → 10. **Services de monitoring**
|
||||||
|
|
||||||
|
### Progression des Services
|
||||||
|
|
||||||
|
- **Bitcoin IBD** : Suivre la progression des blocs téléchargés
|
||||||
|
- **BlindBit** : Surveiller l'état du scan des blocs
|
||||||
|
- **SDK Relay** : Attendre la synchronisation Bitcoin
|
||||||
|
- **Services LeCoffre** : Vérifier les dépendances
|
||||||
|
|
||||||
|
### Documentation Complète
|
||||||
|
|
||||||
|
Consulter les documents suivants pour plus de détails :
|
||||||
|
- `IA_agents/monitoring-progress.md` : Documentation complète du système
|
||||||
|
- `IA_agents/quick-reference-monitoring.md` : Guide de référence rapide
|
||||||
|
- `IA_agents/troubleshooting-monitoring.md` : Guide de dépannage
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
## Autres
|
## Autres
|
||||||
|
|
||||||
N'attend pas infiniment le résultat des curls.
|
N'attend pas infiniment le résultat des curls.
|
||||||
@ -232,6 +297,8 @@ Vérifie que tous les imports sont présents.
|
|||||||
Déclanche les builds via CI.
|
Déclanche les builds via CI.
|
||||||
Vérifie les droits et le résultats de l'écriture sur les fichiers de conf ngninx et sur les fichiers de conf de Bitcoin.
|
Vérifie les droits et le résultats de l'écriture sur les fichiers de conf ngninx et sur les fichiers de conf de Bitcoin.
|
||||||
|
|
||||||
|
**Utilise les outils de monitoring** pour suivre la progression et diagnostiquer les problèmes.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
Met à jour ce document si tu détectes des incohérences ou pose des questions pour confirmer.
|
Met à jour ce document si tu détectes des incohérences ou pose des questions pour confirmer.
|
||||||
|
313
IA_agents/monitoring-progress.md
Normal file
313
IA_agents/monitoring-progress.md
Normal file
@ -0,0 +1,313 @@
|
|||||||
|
# Documentation du Système de Monitoring et Progression
|
||||||
|
|
||||||
|
## Vue d'ensemble
|
||||||
|
|
||||||
|
Ce document décrit le système de monitoring et de progression mis en place pour le déploiement LeCoffre Node. Le système permet de suivre en temps réel la progression des différents processus (IBD Bitcoin, scans BlindBit, synchronisation SDK Relay, etc.) et d'afficher des informations détaillées sur l'état de tous les services.
|
||||||
|
|
||||||
|
## Architecture du Système
|
||||||
|
|
||||||
|
### 1. Healthchecks Informatifs dans docker-compose.yml
|
||||||
|
|
||||||
|
Chaque service dispose maintenant d'un healthcheck qui affiche des informations de progression au lieu de simples codes de retour.
|
||||||
|
|
||||||
|
#### Bitcoin Signet
|
||||||
|
```yaml
|
||||||
|
healthcheck:
|
||||||
|
test: ["CMD", "sh", "-c", "info=$(bitcoin-cli -conf=/etc/bitcoin/bitcoin.conf getblockchaininfo 2>/dev/null || echo '{}'); blocks=$(echo \"$info\" | jq -r '.blocks // 0'); headers=$(echo \"$info\" | jq -r '.headers // 0'); if [ \"$blocks\" -eq \"$headers\" ] && [ \"$blocks\" -gt 0 ]; then echo \"Bitcoin sync complete: $blocks blocks\"; exit 0; else echo \"Bitcoin IBD: $blocks/$headers blocks ($(($headers - $blocks)) remaining)\"; exit 1; fi"]
|
||||||
|
interval: 30s
|
||||||
|
timeout: 10s
|
||||||
|
retries: 3
|
||||||
|
```
|
||||||
|
|
||||||
|
**Messages affichés :**
|
||||||
|
- `Bitcoin sync complete: 136548 blocks` (quand synchronisé)
|
||||||
|
- `Bitcoin IBD: 34729/136548 blocks (101819 remaining)` (pendant la synchronisation)
|
||||||
|
|
||||||
|
#### BlindBit Oracle
|
||||||
|
```yaml
|
||||||
|
healthcheck:
|
||||||
|
test: ["CMD", "sh", "-c", "code=$(curl -s -o /dev/null -w '%{http_code}' http://localhost:8000/tweaks/1); if [ \"$code\" = \"200\" ]; then echo \"BlindBit ready: Oracle service responding\"; exit 0; elif [ \"$code\" = \"000\" ]; then echo \"BlindBit starting: Oracle service not yet ready\"; exit 1; else echo \"BlindBit scanning: Oracle responding with code $code\"; exit 1; fi"]
|
||||||
|
interval: 15s
|
||||||
|
timeout: 5s
|
||||||
|
retries: 10
|
||||||
|
```
|
||||||
|
|
||||||
|
**Messages affichés :**
|
||||||
|
- `BlindBit ready: Oracle service responding` (prêt)
|
||||||
|
- `BlindBit starting: Oracle service not yet ready` (démarrage)
|
||||||
|
- `BlindBit scanning: Oracle responding with code 404` (scan en cours)
|
||||||
|
|
||||||
|
#### SDK Relay
|
||||||
|
```yaml
|
||||||
|
healthcheck:
|
||||||
|
test: ["CMD", "sh", "-c", "if curl -f http://localhost:8091/ >/dev/null 2>&1; then echo 'SDK Relay ready: WebSocket server responding'; exit 0; else echo 'SDK Relay IBD: Waiting for Bitcoin sync to complete'; exit 1; fi"]
|
||||||
|
interval: 30s
|
||||||
|
timeout: 10s
|
||||||
|
retries: 3
|
||||||
|
```
|
||||||
|
|
||||||
|
**Messages affichés :**
|
||||||
|
- `SDK Relay ready: WebSocket server responding` (prêt)
|
||||||
|
- `SDK Relay IBD: Waiting for Bitcoin sync to complete` (en attente)
|
||||||
|
|
||||||
|
#### Autres Services
|
||||||
|
Tous les autres services (SDK Storage, SDK Signer, LeCoffre Backend/Frontend, IHM Client, Grafana, Loki, Promtail, Status API) ont des healthchecks similaires avec des messages informatifs.
|
||||||
|
|
||||||
|
### 2. Scripts de Monitoring
|
||||||
|
|
||||||
|
#### monitor-progress.sh
|
||||||
|
Script principal pour afficher un aperçu complet de tous les services.
|
||||||
|
|
||||||
|
**Fonctionnalités :**
|
||||||
|
- Statut de tous les services avec codes couleur
|
||||||
|
- Progression Bitcoin avec pourcentage et barre de progression
|
||||||
|
- Progression BlindBit avec état du scan
|
||||||
|
- Progression SDK Relay avec état WebSocket
|
||||||
|
- Statut des autres services
|
||||||
|
|
||||||
|
**Utilisation :**
|
||||||
|
```bash
|
||||||
|
./scripts/monitor-progress.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
**Exemple de sortie :**
|
||||||
|
```
|
||||||
|
========================================
|
||||||
|
LeCoffre Node - Monitoring Progress
|
||||||
|
========================================
|
||||||
|
|
||||||
|
Service Status:
|
||||||
|
✓ Bitcoin Signet: Ready
|
||||||
|
✓ BlindBit Oracle: Ready
|
||||||
|
✓ SDK Storage: Ready
|
||||||
|
⚠ SDK Relay: Starting/Processing
|
||||||
|
✗ LeCoffre Backend: Stopped
|
||||||
|
✗ LeCoffre Frontend: Stopped
|
||||||
|
✓ IHM Client: Ready
|
||||||
|
|
||||||
|
Bitcoin Progress:
|
||||||
|
⏳ Bitcoin IBD: 34729/136548 blocks (101819 remaining) - 25%
|
||||||
|
|
||||||
|
BlindBit Progress:
|
||||||
|
✓ BlindBit ready: Oracle service responding
|
||||||
|
|
||||||
|
SDK Relay Progress:
|
||||||
|
⏳ SDK Relay starting: WebSocket server not yet ready
|
||||||
|
|
||||||
|
Other Services Progress:
|
||||||
|
✓ SDK Storage ready: API responding
|
||||||
|
✓ SDK Signer ready: WebSocket server responding
|
||||||
|
✓ IHM Client ready: Vite dev server responding
|
||||||
|
✓ Grafana ready: Dashboard service responding
|
||||||
|
```
|
||||||
|
|
||||||
|
#### watch-progress.sh
|
||||||
|
Script de surveillance en temps réel avec rafraîchissement automatique.
|
||||||
|
|
||||||
|
**Fonctionnalités :**
|
||||||
|
- Mise à jour automatique toutes les 10 secondes
|
||||||
|
- Barre de progression Bitcoin
|
||||||
|
- Statut des services en temps réel
|
||||||
|
- Services en attente de dépendances
|
||||||
|
|
||||||
|
**Utilisation :**
|
||||||
|
```bash
|
||||||
|
./scripts/watch-progress.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
**Contrôles :**
|
||||||
|
- `Ctrl+C` pour arrêter la surveillance
|
||||||
|
|
||||||
|
#### logs-with-progress.sh
|
||||||
|
Script pour afficher les logs des services avec informations de progression.
|
||||||
|
|
||||||
|
**Fonctionnalités :**
|
||||||
|
- Logs en temps réel ou statiques
|
||||||
|
- Informations de progression selon le service
|
||||||
|
- Support de tous les services
|
||||||
|
- Options de personnalisation
|
||||||
|
|
||||||
|
**Utilisation :**
|
||||||
|
```bash
|
||||||
|
# Logs Bitcoin avec progression
|
||||||
|
./scripts/logs-with-progress.sh bitcoin -p -n 10
|
||||||
|
|
||||||
|
# Logs SDK Relay avec progression
|
||||||
|
./scripts/logs-with-progress.sh sdk_relay -p -f
|
||||||
|
|
||||||
|
# Logs BlindBit avec progression
|
||||||
|
./scripts/logs-with-progress.sh blindbit -p -n 50
|
||||||
|
```
|
||||||
|
|
||||||
|
**Options :**
|
||||||
|
- `-f, --follow` : Suivre les logs en temps réel
|
||||||
|
- `-n, --lines N` : Afficher les N dernières lignes
|
||||||
|
- `-p, --progress` : Afficher la progression
|
||||||
|
- `-h, --help` : Aide
|
||||||
|
|
||||||
|
#### start-with-progress.sh
|
||||||
|
Script de démarrage ordonné avec suivi de progression.
|
||||||
|
|
||||||
|
**Fonctionnalités :**
|
||||||
|
- Démarrage des services dans l'ordre correct
|
||||||
|
- Attente de la santé de chaque service
|
||||||
|
- Affichage de la progression pendant l'attente
|
||||||
|
- Test de l'accès externe à la fin
|
||||||
|
|
||||||
|
**Utilisation :**
|
||||||
|
```bash
|
||||||
|
./scripts/start-with-progress.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
**Ordre de démarrage :**
|
||||||
|
1. Tor
|
||||||
|
2. Bitcoin (avec suivi IBD)
|
||||||
|
3. BlindBit (avec suivi scan)
|
||||||
|
4. SDK Storage
|
||||||
|
5. SDK Relay (avec suivi IBD)
|
||||||
|
6. SDK Signer
|
||||||
|
7. IHM Client
|
||||||
|
8. LeCoffre Backend
|
||||||
|
9. LeCoffre Frontend
|
||||||
|
10. Services de monitoring
|
||||||
|
|
||||||
|
## Codes Couleur et Symboles
|
||||||
|
|
||||||
|
### Symboles de Statut
|
||||||
|
- `✓` : Service prêt et fonctionnel
|
||||||
|
- `⚠` : Service en cours de traitement
|
||||||
|
- `⏳` : Service en cours de démarrage
|
||||||
|
- `✗` : Service arrêté ou en erreur
|
||||||
|
- `ℹ` : Service en cours d'exécution (pas de healthcheck)
|
||||||
|
|
||||||
|
### Codes Couleur
|
||||||
|
- **Vert** : Service prêt et fonctionnel
|
||||||
|
- **Jaune** : Service en cours de traitement/démarrage
|
||||||
|
- **Rouge** : Service arrêté ou en erreur
|
||||||
|
- **Bleu** : Informations générales
|
||||||
|
- **Cyan** : Progression spécifique
|
||||||
|
- **Violet** : En-têtes de sections
|
||||||
|
|
||||||
|
## Progression des Services
|
||||||
|
|
||||||
|
### Bitcoin IBD (Initial Block Download)
|
||||||
|
- **Affichage** : `Bitcoin IBD: 34729/136548 blocks (101819 remaining) - 25%`
|
||||||
|
- **Barre de progression** : `[████████████░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░] 25%`
|
||||||
|
- **Condition de santé** : `blocks == headers && blocks > 0`
|
||||||
|
|
||||||
|
### BlindBit Oracle
|
||||||
|
- **États** : Starting → Scanning → Ready
|
||||||
|
- **Codes HTTP** : 000 (non prêt), 404 (scan), 200 (prêt)
|
||||||
|
- **Messages** : État du scan et réponse du service
|
||||||
|
|
||||||
|
### SDK Relay
|
||||||
|
- **Dépendance** : Bitcoin synchronisé
|
||||||
|
- **États** : IBD → WebSocket Ready
|
||||||
|
- **Messages** : Progression du scan et état WebSocket
|
||||||
|
|
||||||
|
## Intégration avec Docker Compose
|
||||||
|
|
||||||
|
### Variables d'Environnement
|
||||||
|
Le système utilise les variables du fichier `.env.master` :
|
||||||
|
- `SDK_RELAY_*` : Configuration du service relay
|
||||||
|
- `SIGNER_*` : Configuration du service signer
|
||||||
|
- `VITE_*` : Configuration des applications frontend
|
||||||
|
|
||||||
|
### Commandes Docker Compose
|
||||||
|
```bash
|
||||||
|
# Démarrage avec variables centralisées
|
||||||
|
docker compose --env-file .env.master up -d
|
||||||
|
|
||||||
|
# Redémarrage d'un service
|
||||||
|
docker compose --env-file .env.master restart bitcoin
|
||||||
|
|
||||||
|
# Arrêt de tous les services
|
||||||
|
docker compose --env-file .env.master down
|
||||||
|
```
|
||||||
|
|
||||||
|
## Surveillance et Maintenance
|
||||||
|
|
||||||
|
### Vérification de l'État
|
||||||
|
```bash
|
||||||
|
# Statut de tous les services
|
||||||
|
docker compose --env-file .env.master ps
|
||||||
|
|
||||||
|
# Logs d'un service spécifique
|
||||||
|
docker logs bitcoin-signet --tail 50
|
||||||
|
|
||||||
|
# Healthcheck d'un service
|
||||||
|
docker inspect --format='{{.State.Health.Status}}' bitcoin-signet
|
||||||
|
```
|
||||||
|
|
||||||
|
### Dépannage
|
||||||
|
1. **Service en état "unhealthy"** : Vérifier les logs avec `docker logs <service>`
|
||||||
|
2. **Progression bloquée** : Vérifier la connectivité réseau et les dépendances
|
||||||
|
3. **Services en attente** : Vérifier que les services de dépendance sont "healthy"
|
||||||
|
|
||||||
|
## Exemples d'Utilisation
|
||||||
|
|
||||||
|
### Surveillance Continue
|
||||||
|
```bash
|
||||||
|
# Démarrer la surveillance en temps réel
|
||||||
|
./scripts/watch-progress.sh
|
||||||
|
|
||||||
|
# Dans un autre terminal, afficher les logs
|
||||||
|
./scripts/logs-with-progress.sh bitcoin -p -f
|
||||||
|
```
|
||||||
|
|
||||||
|
### Démarrage Complet
|
||||||
|
```bash
|
||||||
|
# Arrêter tous les services
|
||||||
|
docker compose --env-file .env.master down
|
||||||
|
|
||||||
|
# Démarrer avec suivi de progression
|
||||||
|
./scripts/start-with-progress.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
### Vérification Rapide
|
||||||
|
```bash
|
||||||
|
# Aperçu rapide de tous les services
|
||||||
|
./scripts/monitor-progress.sh
|
||||||
|
|
||||||
|
# Logs récents avec progression
|
||||||
|
./scripts/logs-with-progress.sh sdk_relay -p -n 20
|
||||||
|
```
|
||||||
|
|
||||||
|
## Personnalisation
|
||||||
|
|
||||||
|
### Ajout de Nouveaux Services
|
||||||
|
1. Ajouter le healthcheck dans `docker-compose.yml`
|
||||||
|
2. Mettre à jour `monitor-progress.sh` avec le nouveau service
|
||||||
|
3. Ajouter la logique de progression dans `logs-with-progress.sh`
|
||||||
|
|
||||||
|
### Modification des Intervalles
|
||||||
|
- **Healthchecks** : Modifier `interval` dans `docker-compose.yml`
|
||||||
|
- **Surveillance** : Modifier le `sleep` dans `watch-progress.sh`
|
||||||
|
- **Logs** : Utiliser l'option `-n` pour le nombre de lignes
|
||||||
|
|
||||||
|
## Bonnes Pratiques
|
||||||
|
|
||||||
|
1. **Utiliser les scripts** plutôt que les commandes Docker directes
|
||||||
|
2. **Surveiller la progression** pendant les déploiements
|
||||||
|
3. **Vérifier les dépendances** avant de démarrer les services
|
||||||
|
4. **Consulter les logs** en cas de problème
|
||||||
|
5. **Utiliser les variables centralisées** du fichier `.env.master`
|
||||||
|
|
||||||
|
## Dépannage Courant
|
||||||
|
|
||||||
|
### Bitcoin IBD Lent
|
||||||
|
- Vérifier la connectivité réseau
|
||||||
|
- Vérifier l'espace disque disponible
|
||||||
|
- Consulter les logs pour les erreurs de connexion
|
||||||
|
|
||||||
|
### Services en Attente
|
||||||
|
- Vérifier que les services de dépendance sont "healthy"
|
||||||
|
- Consulter les logs des services de dépendance
|
||||||
|
- Vérifier la configuration des dépendances dans `docker-compose.yml`
|
||||||
|
|
||||||
|
### Healthchecks Échoués
|
||||||
|
- Vérifier que les ports sont accessibles
|
||||||
|
- Consulter les logs du service
|
||||||
|
- Vérifier la configuration du healthcheck
|
||||||
|
|
||||||
|
Ce système de monitoring et de progression permet une surveillance complète et en temps réel du déploiement LeCoffre Node, facilitant le diagnostic et la maintenance des services.
|
@ -5,6 +5,7 @@
|
|||||||
```
|
```
|
||||||
Déploie l'architecture LeCoffre Node complète en respectant strictement les consignes de déploiement.
|
Déploie l'architecture LeCoffre Node complète en respectant strictement les consignes de déploiement.
|
||||||
Arrete et nettoie tous les services, images, tests, commandes, éditions... encore actives avant de relancer proprement.
|
Arrete et nettoie tous les services, images, tests, commandes, éditions... encore actives avant de relancer proprement.
|
||||||
|
A la fin met bien à jour les documents de `IA_agents/` et ses sous dossiers.
|
||||||
|
|
||||||
## Contexte obligatoire
|
## Contexte obligatoire
|
||||||
- Consulte attentivement `IA_agents/context.md` pour le contexte technique
|
- Consulte attentivement `IA_agents/context.md` pour le contexte technique
|
||||||
|
237
IA_agents/quick-reference-monitoring.md
Normal file
237
IA_agents/quick-reference-monitoring.md
Normal file
@ -0,0 +1,237 @@
|
|||||||
|
# Guide de Référence Rapide - Monitoring LeCoffre Node
|
||||||
|
|
||||||
|
## Commandes Essentielles
|
||||||
|
|
||||||
|
### Surveillance Générale
|
||||||
|
```bash
|
||||||
|
# Aperçu complet de tous les services
|
||||||
|
./scripts/monitor-progress.sh
|
||||||
|
|
||||||
|
# Surveillance en temps réel
|
||||||
|
./scripts/watch-progress.sh
|
||||||
|
|
||||||
|
# Logs avec progression
|
||||||
|
./scripts/logs-with-progress.sh <service> -p
|
||||||
|
```
|
||||||
|
|
||||||
|
### Démarrage et Arrêt
|
||||||
|
```bash
|
||||||
|
# Démarrage avec suivi de progression
|
||||||
|
./scripts/start-with-progress.sh
|
||||||
|
|
||||||
|
# Arrêt de tous les services
|
||||||
|
docker compose --env-file .env.master down
|
||||||
|
|
||||||
|
# Redémarrage d'un service
|
||||||
|
docker compose --env-file .env.master restart <service>
|
||||||
|
```
|
||||||
|
|
||||||
|
### Vérification de l'État
|
||||||
|
```bash
|
||||||
|
# Statut de tous les services
|
||||||
|
docker compose --env-file .env.master ps
|
||||||
|
|
||||||
|
# Logs d'un service
|
||||||
|
docker logs <service> --tail 50
|
||||||
|
|
||||||
|
# Healthcheck d'un service
|
||||||
|
docker inspect --format='{{.State.Health.Status}}' <service>
|
||||||
|
```
|
||||||
|
|
||||||
|
## Services et Leurs Noms
|
||||||
|
|
||||||
|
| Service | Nom du Conteneur | Port | Description |
|
||||||
|
|---------|------------------|------|-------------|
|
||||||
|
| Tor | tor-proxy | 9050 | Proxy SOCKS |
|
||||||
|
| Bitcoin | bitcoin-signet | 8332 | Nœud Bitcoin Signet |
|
||||||
|
| BlindBit | blindbit-oracle | 8000 | Oracle BlindBit |
|
||||||
|
| SDK Storage | sdk_storage | 8081 | Stockage SDK |
|
||||||
|
| SDK Relay | sdk_relay | 8090-8091 | Relay WebSocket |
|
||||||
|
| SDK Signer | sdk_signer | 3001 | Service de signature |
|
||||||
|
| LeCoffre Backend | lecoffre-back | 8080 | API Backend |
|
||||||
|
| LeCoffre Frontend | lecoffre-front | 3000 | Interface utilisateur |
|
||||||
|
| IHM Client | ihm_client | 3003 | Client IHM |
|
||||||
|
| Grafana | grafana | 3005 | Dashboard |
|
||||||
|
| Loki | loki | 3100 | Agrégation de logs |
|
||||||
|
| Promtail | promtail | 9080 | Collection de logs |
|
||||||
|
| Status API | status-api | 3006 | API de statut |
|
||||||
|
|
||||||
|
## Codes de Statut
|
||||||
|
|
||||||
|
### Symboles
|
||||||
|
- `✓` : Service prêt et fonctionnel
|
||||||
|
- `⚠` : Service en cours de traitement
|
||||||
|
- `⏳` : Service en cours de démarrage
|
||||||
|
- `✗` : Service arrêté ou en erreur
|
||||||
|
- `ℹ` : Service en cours d'exécution
|
||||||
|
|
||||||
|
### États de Healthcheck
|
||||||
|
- `healthy` : Service prêt
|
||||||
|
- `unhealthy` : Service en cours de traitement
|
||||||
|
- `starting` : Service en cours de démarrage
|
||||||
|
- `no-healthcheck` : Pas de healthcheck défini
|
||||||
|
|
||||||
|
## Progression des Services
|
||||||
|
|
||||||
|
### Bitcoin IBD
|
||||||
|
- **Message** : `Bitcoin IBD: 34729/136548 blocks (101819 remaining) - 25%`
|
||||||
|
- **Condition de santé** : `blocks == headers && blocks > 0`
|
||||||
|
- **Temps estimé** : Variable selon la vitesse de téléchargement
|
||||||
|
|
||||||
|
### BlindBit Oracle
|
||||||
|
- **États** : Starting → Scanning → Ready
|
||||||
|
- **Codes HTTP** : 000 (non prêt), 404 (scan), 200 (prêt)
|
||||||
|
- **Message de santé** : `BlindBit ready: Oracle service responding`
|
||||||
|
|
||||||
|
### SDK Relay
|
||||||
|
- **Dépendance** : Bitcoin synchronisé
|
||||||
|
- **États** : IBD → WebSocket Ready
|
||||||
|
- **Message de santé** : `SDK Relay ready: WebSocket server responding`
|
||||||
|
|
||||||
|
## Ordre de Démarrage
|
||||||
|
|
||||||
|
1. **Tor** → 2. **Bitcoin** → 3. **BlindBit** → 4. **SDK Storage** → 5. **SDK Relay** → 6. **SDK Signer** → 7. **IHM Client** → 8. **LeCoffre Backend** → 9. **LeCoffre Frontend** → 10. **Services de monitoring**
|
||||||
|
|
||||||
|
## URLs de Test
|
||||||
|
|
||||||
|
### Services Locaux
|
||||||
|
- Bitcoin RPC : `http://localhost:8332`
|
||||||
|
- BlindBit : `http://localhost:8000`
|
||||||
|
- SDK Storage : `http://localhost:8081`
|
||||||
|
- SDK Relay : `http://localhost:8091`
|
||||||
|
- SDK Signer : `http://localhost:3001`
|
||||||
|
- IHM Client : `http://localhost:3003`
|
||||||
|
- Grafana : `http://localhost:3005`
|
||||||
|
- Loki : `http://localhost:3100`
|
||||||
|
- Status API : `http://localhost:3006`
|
||||||
|
|
||||||
|
### Services Externes
|
||||||
|
- Page de statut : `https://dev4.4nkweb.com/status/`
|
||||||
|
- API de statut : `https://dev4.4nkweb.com/status/api`
|
||||||
|
- Grafana : `https://dev4.4nkweb.com/grafana/`
|
||||||
|
- IHM Client : `https://dev4.4nkweb.com/`
|
||||||
|
- Application LeCoffre : `https://dev4.4nkweb.com/lecoffre/`
|
||||||
|
- WebSocket Relay : `https://dev4.4nkweb.com/ws/`
|
||||||
|
|
||||||
|
## Dépannage Rapide
|
||||||
|
|
||||||
|
### Service en État "unhealthy"
|
||||||
|
```bash
|
||||||
|
# Vérifier les logs
|
||||||
|
docker logs <service> --tail 50
|
||||||
|
|
||||||
|
# Vérifier le healthcheck
|
||||||
|
docker inspect --format='{{.State.Health.Status}}' <service>
|
||||||
|
```
|
||||||
|
|
||||||
|
### Progression Bitcoin Bloquée
|
||||||
|
```bash
|
||||||
|
# Vérifier la connectivité
|
||||||
|
docker exec bitcoin-signet bitcoin-cli -conf=/etc/bitcoin/bitcoin.conf getblockchaininfo
|
||||||
|
|
||||||
|
# Vérifier les logs
|
||||||
|
docker logs bitcoin-signet --tail 20
|
||||||
|
```
|
||||||
|
|
||||||
|
### Services en Attente
|
||||||
|
```bash
|
||||||
|
# Vérifier les dépendances
|
||||||
|
docker compose --env-file .env.master ps
|
||||||
|
|
||||||
|
# Vérifier les logs des services de dépendance
|
||||||
|
docker logs <service-dependance> --tail 20
|
||||||
|
```
|
||||||
|
|
||||||
|
### Erreurs de Connexion
|
||||||
|
```bash
|
||||||
|
# Vérifier la connectivité réseau
|
||||||
|
docker network ls
|
||||||
|
docker network inspect lecoffre_node_btcnet
|
||||||
|
|
||||||
|
# Vérifier les ports
|
||||||
|
netstat -tlnp | grep <port>
|
||||||
|
```
|
||||||
|
|
||||||
|
## Variables d'Environnement Importantes
|
||||||
|
|
||||||
|
### Fichier .env.master
|
||||||
|
- `SDK_RELAY_*` : Configuration du service relay
|
||||||
|
- `SIGNER_*` : Configuration du service signer
|
||||||
|
- `VITE_*` : Configuration des applications frontend
|
||||||
|
- `IDNOT_*` : Configuration des APIs notaires
|
||||||
|
- `STRIPE_*` : Configuration des paiements
|
||||||
|
- `MAILCHIMP_*` : Configuration des emails
|
||||||
|
- `OVH_*` : Configuration des SMS
|
||||||
|
|
||||||
|
### Utilisation
|
||||||
|
```bash
|
||||||
|
# Toujours utiliser le fichier .env.master
|
||||||
|
docker compose --env-file .env.master up -d
|
||||||
|
```
|
||||||
|
|
||||||
|
## Scripts de Monitoring
|
||||||
|
|
||||||
|
### monitor-progress.sh
|
||||||
|
- Aperçu complet de tous les services
|
||||||
|
- Progression Bitcoin avec pourcentage
|
||||||
|
- Statut des services avec codes couleur
|
||||||
|
- Progression BlindBit et SDK Relay
|
||||||
|
|
||||||
|
### watch-progress.sh
|
||||||
|
- Surveillance en temps réel
|
||||||
|
- Mise à jour automatique toutes les 10 secondes
|
||||||
|
- Barre de progression Bitcoin
|
||||||
|
- Services en attente de dépendances
|
||||||
|
|
||||||
|
### logs-with-progress.sh
|
||||||
|
- Logs avec informations de progression
|
||||||
|
- Support de tous les services
|
||||||
|
- Options de personnalisation
|
||||||
|
- Suivi en temps réel
|
||||||
|
|
||||||
|
### start-with-progress.sh
|
||||||
|
- Démarrage ordonné des services
|
||||||
|
- Attente de la santé de chaque service
|
||||||
|
- Affichage de la progression
|
||||||
|
- Test de l'accès externe
|
||||||
|
|
||||||
|
## Bonnes Pratiques
|
||||||
|
|
||||||
|
1. **Utiliser les scripts** plutôt que les commandes Docker directes
|
||||||
|
2. **Surveiller la progression** pendant les déploiements
|
||||||
|
3. **Vérifier les dépendances** avant de démarrer les services
|
||||||
|
4. **Consulter les logs** en cas de problème
|
||||||
|
5. **Utiliser les variables centralisées** du fichier `.env.master`
|
||||||
|
6. **Tester l'accès externe** après le déploiement
|
||||||
|
7. **Vérifier la santé des services** régulièrement
|
||||||
|
|
||||||
|
## Exemples d'Utilisation
|
||||||
|
|
||||||
|
### Démarrage Complet
|
||||||
|
```bash
|
||||||
|
# Arrêter tous les services
|
||||||
|
docker compose --env-file .env.master down
|
||||||
|
|
||||||
|
# Démarrer avec suivi de progression
|
||||||
|
./scripts/start-with-progress.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
### Surveillance Continue
|
||||||
|
```bash
|
||||||
|
# Démarrer la surveillance en temps réel
|
||||||
|
./scripts/watch-progress.sh
|
||||||
|
|
||||||
|
# Dans un autre terminal, afficher les logs
|
||||||
|
./scripts/logs-with-progress.sh bitcoin -p -f
|
||||||
|
```
|
||||||
|
|
||||||
|
### Vérification Rapide
|
||||||
|
```bash
|
||||||
|
# Aperçu rapide de tous les services
|
||||||
|
./scripts/monitor-progress.sh
|
||||||
|
|
||||||
|
# Logs récents avec progression
|
||||||
|
./scripts/logs-with-progress.sh sdk_relay -p -n 20
|
||||||
|
```
|
||||||
|
|
||||||
|
Ce guide de référence rapide permet aux agents IA d'utiliser efficacement le système de monitoring et de progression du déploiement LeCoffre Node.
|
372
IA_agents/troubleshooting-monitoring.md
Normal file
372
IA_agents/troubleshooting-monitoring.md
Normal file
@ -0,0 +1,372 @@
|
|||||||
|
# Guide de Dépannage - Monitoring LeCoffre Node
|
||||||
|
|
||||||
|
## Problèmes Courants et Solutions
|
||||||
|
|
||||||
|
### 1. Services en État "unhealthy"
|
||||||
|
|
||||||
|
#### Symptômes
|
||||||
|
- Service affiché comme "unhealthy" dans `docker compose ps`
|
||||||
|
- Healthcheck échoue constamment
|
||||||
|
- Service ne répond pas aux requêtes
|
||||||
|
|
||||||
|
#### Diagnostic
|
||||||
|
```bash
|
||||||
|
# Vérifier le statut du healthcheck
|
||||||
|
docker inspect --format='{{.State.Health.Status}}' <service>
|
||||||
|
|
||||||
|
# Vérifier les logs du healthcheck
|
||||||
|
docker inspect --format='{{range .State.Health.Log}}{{.Output}}{{end}}' <service>
|
||||||
|
|
||||||
|
# Vérifier les logs du service
|
||||||
|
docker logs <service> --tail 50
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Solutions
|
||||||
|
1. **Vérifier la connectivité réseau**
|
||||||
|
```bash
|
||||||
|
# Vérifier que le service écoute sur le bon port
|
||||||
|
docker exec <service> netstat -tlnp
|
||||||
|
|
||||||
|
# Vérifier la connectivité depuis l'extérieur
|
||||||
|
curl -f http://localhost:<port>/health
|
||||||
|
```
|
||||||
|
|
||||||
|
2. **Vérifier les dépendances**
|
||||||
|
```bash
|
||||||
|
# Vérifier que les services de dépendance sont "healthy"
|
||||||
|
docker compose --env-file .env.master ps
|
||||||
|
```
|
||||||
|
|
||||||
|
3. **Redémarrer le service**
|
||||||
|
```bash
|
||||||
|
docker compose --env-file .env.master restart <service>
|
||||||
|
```
|
||||||
|
|
||||||
|
### 2. Progression Bitcoin Bloquée
|
||||||
|
|
||||||
|
#### Symptômes
|
||||||
|
- Bitcoin IBD reste à un pourcentage fixe
|
||||||
|
- Pas de nouveaux blocs téléchargés
|
||||||
|
- Messages d'erreur dans les logs
|
||||||
|
|
||||||
|
#### Diagnostic
|
||||||
|
```bash
|
||||||
|
# Vérifier l'état de la blockchain
|
||||||
|
docker exec bitcoin-signet bitcoin-cli -conf=/etc/bitcoin/bitcoin.conf getblockchaininfo
|
||||||
|
|
||||||
|
# Vérifier les connexions
|
||||||
|
docker exec bitcoin-signet bitcoin-cli -conf=/etc/bitcoin/bitcoin.conf getpeerinfo
|
||||||
|
|
||||||
|
# Vérifier les logs
|
||||||
|
docker logs bitcoin-signet --tail 100 | grep -E "(ERROR|error|Error|WARN|warn|Warn)"
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Solutions
|
||||||
|
1. **Vérifier la connectivité réseau**
|
||||||
|
```bash
|
||||||
|
# Vérifier que Tor fonctionne
|
||||||
|
docker logs tor-proxy --tail 20
|
||||||
|
|
||||||
|
# Vérifier la connectivité Bitcoin
|
||||||
|
docker exec bitcoin-signet bitcoin-cli -conf=/etc/bitcoin/bitcoin.conf getnetworkinfo
|
||||||
|
```
|
||||||
|
|
||||||
|
2. **Vérifier l'espace disque**
|
||||||
|
```bash
|
||||||
|
# Vérifier l'espace disponible
|
||||||
|
df -h
|
||||||
|
|
||||||
|
# Vérifier la taille du volume Bitcoin
|
||||||
|
docker volume inspect 4nk_node_bitcoin_data
|
||||||
|
```
|
||||||
|
|
||||||
|
3. **Redémarrer Bitcoin**
|
||||||
|
```bash
|
||||||
|
docker compose --env-file .env.master restart bitcoin
|
||||||
|
```
|
||||||
|
|
||||||
|
### 3. Services en Attente de Dépendances
|
||||||
|
|
||||||
|
#### Symptômes
|
||||||
|
- Services affichés comme "Stopped"
|
||||||
|
- Messages "dependency failed to start"
|
||||||
|
- Services ne démarrent pas
|
||||||
|
|
||||||
|
#### Diagnostic
|
||||||
|
```bash
|
||||||
|
# Vérifier les dépendances dans docker-compose.yml
|
||||||
|
grep -A 5 -B 5 "depends_on" docker-compose.yml
|
||||||
|
|
||||||
|
# Vérifier le statut des services de dépendance
|
||||||
|
docker compose --env-file .env.master ps
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Solutions
|
||||||
|
1. **Démarrer les services dans l'ordre correct**
|
||||||
|
```bash
|
||||||
|
# Utiliser le script de démarrage ordonné
|
||||||
|
./scripts/start-with-progress.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
2. **Vérifier les conditions de dépendance**
|
||||||
|
```bash
|
||||||
|
# Vérifier que les services de dépendance sont "healthy"
|
||||||
|
docker inspect --format='{{.State.Health.Status}}' <service-dependance>
|
||||||
|
```
|
||||||
|
|
||||||
|
3. **Modifier temporairement les dépendances**
|
||||||
|
```bash
|
||||||
|
# Changer condition: service_healthy en condition: service_started
|
||||||
|
# (Attention : à remettre en place après résolution)
|
||||||
|
```
|
||||||
|
|
||||||
|
### 4. Erreurs de Connexion WebSocket
|
||||||
|
|
||||||
|
#### Symptômes
|
||||||
|
- SDK Relay ne répond pas sur le port 8091
|
||||||
|
- Erreurs 502 Bad Gateway pour les WebSockets
|
||||||
|
- Messages "TLS support not compiled in"
|
||||||
|
|
||||||
|
#### Diagnostic
|
||||||
|
```bash
|
||||||
|
# Vérifier que le service écoute sur le bon port
|
||||||
|
docker exec sdk_relay netstat -tlnp
|
||||||
|
|
||||||
|
# Vérifier les logs du service
|
||||||
|
docker logs sdk_relay --tail 50
|
||||||
|
|
||||||
|
# Tester la connectivité locale
|
||||||
|
curl -f http://localhost:8091/
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Solutions
|
||||||
|
1. **Vérifier la configuration Nginx**
|
||||||
|
```bash
|
||||||
|
# Vérifier la configuration WebSocket
|
||||||
|
sudo grep -A 10 -B 5 "ws/" /etc/nginx/sites-enabled/dev4.4nkweb.com-https.conf
|
||||||
|
|
||||||
|
# Tester la configuration Nginx
|
||||||
|
sudo nginx -t
|
||||||
|
```
|
||||||
|
|
||||||
|
2. **Vérifier les variables d'environnement**
|
||||||
|
```bash
|
||||||
|
# Vérifier la configuration du SDK Relay
|
||||||
|
docker exec sdk_relay env | grep SDK_RELAY
|
||||||
|
```
|
||||||
|
|
||||||
|
3. **Redémarrer le service**
|
||||||
|
```bash
|
||||||
|
docker compose --env-file .env.master restart sdk_relay
|
||||||
|
```
|
||||||
|
|
||||||
|
### 5. Problèmes de Permissions
|
||||||
|
|
||||||
|
#### Symptômes
|
||||||
|
- Erreurs "Permission denied"
|
||||||
|
- Services ne peuvent pas écrire dans les volumes
|
||||||
|
- Erreurs de montage de volumes
|
||||||
|
|
||||||
|
#### Diagnostic
|
||||||
|
```bash
|
||||||
|
# Vérifier les permissions des volumes
|
||||||
|
docker volume inspect <volume-name>
|
||||||
|
|
||||||
|
# Vérifier les permissions des dossiers locaux
|
||||||
|
ls -la logs/
|
||||||
|
ls -la conf/
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Solutions
|
||||||
|
1. **Corriger les permissions des volumes**
|
||||||
|
```bash
|
||||||
|
# Corriger les permissions des logs
|
||||||
|
sudo chown -R 1000:1000 logs/
|
||||||
|
sudo chmod -R 755 logs/
|
||||||
|
```
|
||||||
|
|
||||||
|
2. **Vérifier la configuration des volumes**
|
||||||
|
```bash
|
||||||
|
# Vérifier la configuration dans docker-compose.yml
|
||||||
|
grep -A 5 -B 5 "volumes:" docker-compose.yml
|
||||||
|
```
|
||||||
|
|
||||||
|
3. **Redémarrer les services**
|
||||||
|
```bash
|
||||||
|
docker compose --env-file .env.master down
|
||||||
|
docker compose --env-file .env.master up -d
|
||||||
|
```
|
||||||
|
|
||||||
|
### 6. Problèmes de Configuration
|
||||||
|
|
||||||
|
#### Symptômes
|
||||||
|
- Services ne démarrent pas
|
||||||
|
- Erreurs de configuration dans les logs
|
||||||
|
- Variables d'environnement manquantes
|
||||||
|
|
||||||
|
#### Diagnostic
|
||||||
|
```bash
|
||||||
|
# Vérifier la configuration Docker Compose
|
||||||
|
docker compose --env-file .env.master config
|
||||||
|
|
||||||
|
# Vérifier les variables d'environnement
|
||||||
|
docker exec <service> env | grep <VARIABLE>
|
||||||
|
|
||||||
|
# Vérifier les fichiers de configuration
|
||||||
|
cat .env.master | grep <VARIABLE>
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Solutions
|
||||||
|
1. **Vérifier le fichier .env.master**
|
||||||
|
```bash
|
||||||
|
# Vérifier que toutes les variables sont définies
|
||||||
|
docker compose --env-file .env.master config --services
|
||||||
|
```
|
||||||
|
|
||||||
|
2. **Corriger les variables manquantes**
|
||||||
|
```bash
|
||||||
|
# Ajouter les variables manquantes dans .env.master
|
||||||
|
echo "VARIABLE=valeur" >> .env.master
|
||||||
|
```
|
||||||
|
|
||||||
|
3. **Redémarrer les services**
|
||||||
|
```bash
|
||||||
|
docker compose --env-file .env.master down
|
||||||
|
docker compose --env-file .env.master up -d
|
||||||
|
```
|
||||||
|
|
||||||
|
## Outils de Diagnostic
|
||||||
|
|
||||||
|
### Scripts de Diagnostic
|
||||||
|
```bash
|
||||||
|
# Diagnostic complet
|
||||||
|
./scripts/monitor-progress.sh
|
||||||
|
|
||||||
|
# Logs avec progression
|
||||||
|
./scripts/logs-with-progress.sh <service> -p -n 100
|
||||||
|
|
||||||
|
# Surveillance en temps réel
|
||||||
|
./scripts/watch-progress.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
### Commandes Docker Utiles
|
||||||
|
```bash
|
||||||
|
# Informations détaillées sur un service
|
||||||
|
docker inspect <service>
|
||||||
|
|
||||||
|
# Logs en temps réel
|
||||||
|
docker logs -f <service>
|
||||||
|
|
||||||
|
# Exécuter une commande dans un conteneur
|
||||||
|
docker exec -it <service> /bin/bash
|
||||||
|
|
||||||
|
# Vérifier l'utilisation des ressources
|
||||||
|
docker stats <service>
|
||||||
|
```
|
||||||
|
|
||||||
|
### Commandes Système
|
||||||
|
```bash
|
||||||
|
# Vérifier l'espace disque
|
||||||
|
df -h
|
||||||
|
|
||||||
|
# Vérifier la mémoire
|
||||||
|
free -h
|
||||||
|
|
||||||
|
# Vérifier les processus
|
||||||
|
ps aux | grep docker
|
||||||
|
|
||||||
|
# Vérifier les ports
|
||||||
|
netstat -tlnp | grep <port>
|
||||||
|
```
|
||||||
|
|
||||||
|
## Procédures de Récupération
|
||||||
|
|
||||||
|
### Récupération Complète
|
||||||
|
```bash
|
||||||
|
# Arrêter tous les services
|
||||||
|
docker compose --env-file .env.master down
|
||||||
|
|
||||||
|
# Nettoyer le système Docker
|
||||||
|
docker system prune -af --volumes
|
||||||
|
|
||||||
|
# Redémarrer avec le script de progression
|
||||||
|
./scripts/start-with-progress.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
### Récupération d'un Service
|
||||||
|
```bash
|
||||||
|
# Arrêter le service
|
||||||
|
docker compose --env-file .env.master stop <service>
|
||||||
|
|
||||||
|
# Supprimer le conteneur
|
||||||
|
docker compose --env-file .env.master rm <service>
|
||||||
|
|
||||||
|
# Redémarrer le service
|
||||||
|
docker compose --env-file .env.master up -d <service>
|
||||||
|
```
|
||||||
|
|
||||||
|
### Récupération des Volumes
|
||||||
|
```bash
|
||||||
|
# Arrêter tous les services
|
||||||
|
docker compose --env-file .env.master down
|
||||||
|
|
||||||
|
# Supprimer les volumes
|
||||||
|
docker volume rm <volume-name>
|
||||||
|
|
||||||
|
# Redémarrer les services
|
||||||
|
docker compose --env-file .env.master up -d
|
||||||
|
```
|
||||||
|
|
||||||
|
## Logs et Monitoring
|
||||||
|
|
||||||
|
### Logs Importants
|
||||||
|
```bash
|
||||||
|
# Logs Bitcoin
|
||||||
|
docker logs bitcoin-signet --tail 100
|
||||||
|
|
||||||
|
# Logs SDK Relay
|
||||||
|
docker logs sdk_relay --tail 100
|
||||||
|
|
||||||
|
# Logs BlindBit
|
||||||
|
docker logs blindbit-oracle --tail 100
|
||||||
|
|
||||||
|
# Logs Nginx
|
||||||
|
sudo tail -f /var/log/nginx/error.log
|
||||||
|
```
|
||||||
|
|
||||||
|
### Monitoring des Ressources
|
||||||
|
```bash
|
||||||
|
# Utilisation des ressources
|
||||||
|
docker stats
|
||||||
|
|
||||||
|
# Espace disque
|
||||||
|
df -h
|
||||||
|
|
||||||
|
# Mémoire
|
||||||
|
free -h
|
||||||
|
|
||||||
|
# CPU
|
||||||
|
top
|
||||||
|
```
|
||||||
|
|
||||||
|
## Prévention des Problèmes
|
||||||
|
|
||||||
|
### Vérifications Régulières
|
||||||
|
1. **Vérifier l'espace disque** : `df -h`
|
||||||
|
2. **Vérifier la mémoire** : `free -h`
|
||||||
|
3. **Vérifier les logs** : `./scripts/monitor-progress.sh`
|
||||||
|
4. **Vérifier la connectivité** : Tester les URLs externes
|
||||||
|
|
||||||
|
### Maintenance Préventive
|
||||||
|
1. **Nettoyer les logs** : `docker system prune -f`
|
||||||
|
2. **Vérifier les mises à jour** : `docker images`
|
||||||
|
3. **Sauvegarder les configurations** : Copier `.env.master`
|
||||||
|
4. **Tester les sauvegardes** : Vérifier les volumes
|
||||||
|
|
||||||
|
### Surveillance Continue
|
||||||
|
1. **Utiliser les scripts de monitoring** : `./scripts/watch-progress.sh`
|
||||||
|
2. **Configurer des alertes** : Surveiller les logs d'erreur
|
||||||
|
3. **Vérifier les performances** : `docker stats`
|
||||||
|
4. **Tester la connectivité** : Vérifier les URLs externes
|
||||||
|
|
||||||
|
Ce guide de dépannage permet aux agents IA de diagnostiquer et résoudre rapidement les problèmes courants du système de monitoring LeCoffre Node.
|
Loading…
x
Reference in New Issue
Block a user