v1.0 - Version stable: multi-PC, détection UI-DETR-1, 3 modes exécution
- Frontend v4 accessible sur réseau local (192.168.1.40) - Ports ouverts: 3002 (frontend), 5001 (backend), 5004 (dashboard) - Ollama GPU fonctionnel - Self-healing interactif - Dashboard confiance Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
328
visual_workflow_builder/backend/SCRIPTS_USAGE.md
Normal file
328
visual_workflow_builder/backend/SCRIPTS_USAGE.md
Normal file
@@ -0,0 +1,328 @@
|
||||
# Scripts de Gestion du Serveur Backend
|
||||
|
||||
Ce dossier contient des scripts shell pour faciliter la gestion du serveur backend Flask.
|
||||
|
||||
## Scripts Disponibles
|
||||
|
||||
### 🚀 start.sh
|
||||
Démarre le serveur backend en arrière-plan.
|
||||
|
||||
```bash
|
||||
./start.sh
|
||||
```
|
||||
|
||||
**Fonctionnalités:**
|
||||
- Vérifie si le serveur est déjà en cours d'exécution
|
||||
- Démarre le serveur sur le port 5001
|
||||
- Crée un fichier PID (`.server.pid`)
|
||||
- Redirige les logs vers `server.log`
|
||||
- Affiche l'URL et les informations de démarrage
|
||||
|
||||
**Sortie:**
|
||||
```
|
||||
==========================================
|
||||
Visual Workflow Builder - Backend Server
|
||||
==========================================
|
||||
Starting backend server...
|
||||
- Port: 5001
|
||||
- Log file: /path/to/server.log
|
||||
- PID file: /path/to/.server.pid
|
||||
✓ Server started successfully!
|
||||
- PID: 12345
|
||||
- URL: http://localhost:5001
|
||||
- Health check: http://localhost:5001/health
|
||||
|
||||
To view logs: tail -f /path/to/server.log
|
||||
To stop server: ./stop.sh
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 🛑 stop.sh
|
||||
Arrête le serveur backend proprement.
|
||||
|
||||
```bash
|
||||
./stop.sh
|
||||
```
|
||||
|
||||
**Fonctionnalités:**
|
||||
- Arrêt gracieux du serveur (SIGTERM)
|
||||
- Force l'arrêt si nécessaire (SIGKILL après 5 secondes)
|
||||
- Nettoie le fichier PID
|
||||
- Tue tous les processus sur le port 5001 si nécessaire
|
||||
- Fonctionne même si le fichier PID n'existe pas
|
||||
|
||||
**Sortie:**
|
||||
```
|
||||
==========================================
|
||||
Visual Workflow Builder - Stop Server
|
||||
==========================================
|
||||
Stopping server (PID: 12345)...
|
||||
✓ Server stopped gracefully
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 📊 status.sh
|
||||
Affiche l'état actuel du serveur.
|
||||
|
||||
```bash
|
||||
./status.sh
|
||||
```
|
||||
|
||||
**Fonctionnalités:**
|
||||
- Vérifie si le processus est en cours d'exécution
|
||||
- Affiche les informations du processus (CPU, mémoire, durée)
|
||||
- Vérifie l'état du port 5001
|
||||
- Effectue un health check HTTP
|
||||
- Affiche les 10 dernières lignes du log
|
||||
|
||||
**Sortie:**
|
||||
```
|
||||
==========================================
|
||||
Visual Workflow Builder - Server Status
|
||||
==========================================
|
||||
PID File: /path/to/.server.pid
|
||||
PID: 12345
|
||||
Status: RUNNING ✓
|
||||
|
||||
Process Information:
|
||||
PID PPID USER %CPU %MEM ELAPSED COMMAND
|
||||
12345 1234 user 0.5 1.2 00:05:23 python app.py
|
||||
|
||||
Port 5001 Status:
|
||||
Port 5001: IN USE
|
||||
Process(es) using port 5001:
|
||||
python 12345 user 5u IPv4 0x... TCP *:5001 (LISTEN)
|
||||
|
||||
Health Check:
|
||||
HTTP Response: 200 OK ✓
|
||||
Server is responding correctly
|
||||
|
||||
Recent Log Entries (last 10 lines):
|
||||
-----------------------------------
|
||||
[log entries...]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 🔄 restart.sh
|
||||
Redémarre le serveur (stop + start).
|
||||
|
||||
```bash
|
||||
./restart.sh
|
||||
```
|
||||
|
||||
**Fonctionnalités:**
|
||||
- Arrête le serveur proprement
|
||||
- Attend 2 secondes
|
||||
- Redémarre le serveur
|
||||
|
||||
---
|
||||
|
||||
## Fichiers Générés
|
||||
|
||||
### .server.pid
|
||||
Fichier contenant le PID du processus serveur. Utilisé pour gérer le serveur.
|
||||
|
||||
**Emplacement:** `visual_workflow_builder/backend/.server.pid`
|
||||
|
||||
**Contenu:** Un seul nombre (le PID)
|
||||
```
|
||||
12345
|
||||
```
|
||||
|
||||
### server.log
|
||||
Fichier de log contenant toutes les sorties du serveur (stdout et stderr).
|
||||
|
||||
**Emplacement:** `visual_workflow_builder/backend/server.log`
|
||||
|
||||
**Utilisation:**
|
||||
```bash
|
||||
# Voir les logs en temps réel
|
||||
tail -f server.log
|
||||
|
||||
# Voir les 50 dernières lignes
|
||||
tail -n 50 server.log
|
||||
|
||||
# Rechercher des erreurs
|
||||
grep -i error server.log
|
||||
|
||||
# Vider le fichier de log
|
||||
> server.log
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Exemples d'Utilisation
|
||||
|
||||
### Démarrage Normal
|
||||
```bash
|
||||
# Démarrer le serveur
|
||||
./start.sh
|
||||
|
||||
# Vérifier qu'il fonctionne
|
||||
./status.sh
|
||||
|
||||
# Tester l'API
|
||||
curl http://localhost:5001/health
|
||||
```
|
||||
|
||||
### Développement avec Logs
|
||||
```bash
|
||||
# Démarrer le serveur
|
||||
./start.sh
|
||||
|
||||
# Ouvrir un autre terminal et suivre les logs
|
||||
tail -f server.log
|
||||
|
||||
# Faire des requêtes API et voir les logs en temps réel
|
||||
curl -X POST http://localhost:5001/api/workflows/ \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"name": "Test", "created_by": "user"}'
|
||||
```
|
||||
|
||||
### Redémarrage Après Modifications
|
||||
```bash
|
||||
# Après avoir modifié le code
|
||||
./restart.sh
|
||||
|
||||
# Ou manuellement
|
||||
./stop.sh
|
||||
./start.sh
|
||||
```
|
||||
|
||||
### Debugging
|
||||
```bash
|
||||
# Vérifier l'état
|
||||
./status.sh
|
||||
|
||||
# Si le serveur ne répond pas
|
||||
./stop.sh
|
||||
./start.sh
|
||||
|
||||
# Voir les erreurs récentes
|
||||
tail -n 100 server.log | grep -i error
|
||||
```
|
||||
|
||||
### Nettoyage Complet
|
||||
```bash
|
||||
# Arrêter le serveur
|
||||
./stop.sh
|
||||
|
||||
# Supprimer les fichiers temporaires
|
||||
rm -f .server.pid server.log
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Dépannage
|
||||
|
||||
### Le serveur ne démarre pas
|
||||
```bash
|
||||
# Vérifier si le port est déjà utilisé
|
||||
lsof -i:5001
|
||||
|
||||
# Tuer le processus sur le port 5001
|
||||
kill $(lsof -ti:5001)
|
||||
|
||||
# Réessayer
|
||||
./start.sh
|
||||
```
|
||||
|
||||
### Le serveur ne s'arrête pas
|
||||
```bash
|
||||
# Forcer l'arrêt
|
||||
./stop.sh
|
||||
|
||||
# Si ça ne fonctionne pas, tuer manuellement
|
||||
kill -9 $(cat .server.pid)
|
||||
rm .server.pid
|
||||
```
|
||||
|
||||
### Fichier PID obsolète
|
||||
```bash
|
||||
# Supprimer le fichier PID
|
||||
rm .server.pid
|
||||
|
||||
# Vérifier l'état
|
||||
./status.sh
|
||||
|
||||
# Redémarrer si nécessaire
|
||||
./start.sh
|
||||
```
|
||||
|
||||
### Logs trop volumineux
|
||||
```bash
|
||||
# Vider le fichier de log
|
||||
> server.log
|
||||
|
||||
# Ou le supprimer
|
||||
rm server.log
|
||||
|
||||
# Le fichier sera recréé au prochain démarrage
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Intégration avec les Tests
|
||||
|
||||
### Lancer les tests avec le serveur
|
||||
```bash
|
||||
# Démarrer le serveur
|
||||
./start.sh
|
||||
|
||||
# Attendre qu'il soit prêt
|
||||
sleep 2
|
||||
|
||||
# Lancer les tests
|
||||
python test_api_manual.py
|
||||
|
||||
# Arrêter le serveur
|
||||
./stop.sh
|
||||
```
|
||||
|
||||
### Script de test complet
|
||||
```bash
|
||||
#!/bin/bash
|
||||
./start.sh
|
||||
sleep 2
|
||||
python test_api_manual.py
|
||||
TEST_RESULT=$?
|
||||
./stop.sh
|
||||
exit $TEST_RESULT
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Notes Importantes
|
||||
|
||||
1. **Environnement Virtuel**: Les scripts utilisent automatiquement `../../venv_v3`
|
||||
2. **Port**: Le serveur écoute sur le port 5001 (configurable dans `app.py`)
|
||||
3. **Logs**: Les logs sont écrits dans `server.log` (rotation manuelle nécessaire)
|
||||
4. **PID**: Le fichier `.server.pid` est automatiquement nettoyé à l'arrêt
|
||||
5. **Permissions**: Les scripts doivent être exécutables (`chmod +x *.sh`)
|
||||
|
||||
---
|
||||
|
||||
## Commandes Rapides
|
||||
|
||||
```bash
|
||||
# Démarrer
|
||||
./start.sh
|
||||
|
||||
# Arrêter
|
||||
./stop.sh
|
||||
|
||||
# État
|
||||
./status.sh
|
||||
|
||||
# Redémarrer
|
||||
./restart.sh
|
||||
|
||||
# Logs en temps réel
|
||||
tail -f server.log
|
||||
|
||||
# Health check
|
||||
curl http://localhost:5001/health
|
||||
```
|
||||
Reference in New Issue
Block a user