- 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>
272 lines
4.9 KiB
Markdown
272 lines
4.9 KiB
Markdown
# Dashboard Web RPA Vision V3
|
|
|
|
Interface web pour visualiser les logs et lancer les tests unitaires de RPA Vision V3.
|
|
|
|
## 🚀 Lancement Rapide
|
|
|
|
```bash
|
|
cd rpa_vision_v3
|
|
./web_dashboard/start_dashboard.sh
|
|
```
|
|
|
|
Puis ouvrir dans le navigateur : **http://localhost:5001**
|
|
|
|
## ✨ Fonctionnalités
|
|
|
|
### 📊 Statut du Système
|
|
- Nombre total de tests (unitaires, intégration, performance)
|
|
- État des dépendances (PyTorch, OpenCLIP, FAISS)
|
|
- Chemins des répertoires
|
|
|
|
### 🧪 Tests Unitaires
|
|
- Liste de tous les tests disponibles
|
|
- Lancement individuel de chaque test
|
|
- Lancement groupé par type (unit, integration, performance)
|
|
- Affichage en temps réel de la sortie
|
|
|
|
### 📝 Logs en Temps Réel
|
|
- Affichage des 50 derniers logs
|
|
- Rafraîchissement automatique toutes les 5 secondes
|
|
- Scroll automatique vers les nouveaux logs
|
|
- Filtrage par fichier de log
|
|
|
|
### 📋 Sortie des Tests
|
|
- Affichage détaillé de la sortie des tests
|
|
- Code retour et statut (✅ RÉUSSI / ❌ ÉCHOUÉ)
|
|
- STDOUT et STDERR séparés
|
|
- Format console avec coloration
|
|
|
|
## 🛠️ Installation Manuelle
|
|
|
|
Si le script automatique ne fonctionne pas :
|
|
|
|
```bash
|
|
# 1. Activer l'environnement virtuel
|
|
source venv_v3/bin/activate
|
|
|
|
# 2. Installer Flask
|
|
pip install Flask==3.0.0
|
|
|
|
# 3. Lancer le dashboard
|
|
cd web_dashboard
|
|
python3 app.py
|
|
```
|
|
|
|
## 📁 Structure
|
|
|
|
```
|
|
web_dashboard/
|
|
├── app.py # Application Flask
|
|
├── templates/
|
|
│ └── index.html # Interface web
|
|
├── requirements.txt # Dépendances
|
|
├── start_dashboard.sh # Script de lancement
|
|
└── README.md # Ce fichier
|
|
```
|
|
|
|
## 🔧 Configuration
|
|
|
|
### Port
|
|
|
|
Par défaut, le dashboard écoute sur le port **5001**. Pour changer :
|
|
|
|
```python
|
|
# Dans app.py, ligne finale
|
|
app.run(debug=True, host='0.0.0.0', port=5001) # Changer 5001
|
|
```
|
|
|
|
### Logs
|
|
|
|
Les logs sont lus depuis `rpa_vision_v3/logs/*.log`. Pour changer :
|
|
|
|
```python
|
|
# Dans app.py
|
|
LOGS_DIR = BASE_DIR / "logs" # Changer le chemin
|
|
```
|
|
|
|
### Tests
|
|
|
|
Les tests sont lus depuis `rpa_vision_v3/tests/`. Structure attendue :
|
|
|
|
```
|
|
tests/
|
|
├── unit/ # Tests unitaires
|
|
├── integration/ # Tests d'intégration
|
|
└── performance/ # Tests de performance
|
|
```
|
|
|
|
## 🎨 Interface
|
|
|
|
### Thème
|
|
|
|
L'interface utilise un thème moderne avec :
|
|
- Gradient violet/bleu pour l'en-tête
|
|
- Cartes blanches avec ombres
|
|
- Console sombre pour les logs et sorties
|
|
- Boutons colorés par type de test
|
|
|
|
### Responsive
|
|
|
|
L'interface s'adapte automatiquement :
|
|
- Desktop : 2 colonnes
|
|
- Mobile : 1 colonne
|
|
|
|
## 🔄 Auto-Refresh
|
|
|
|
- **Logs** : Rafraîchissement automatique toutes les 5 secondes
|
|
- **Statut système** : Rafraîchissement toutes les 10 secondes
|
|
- **Tests** : Rafraîchissement manuel uniquement
|
|
|
|
## 🐛 Dépannage
|
|
|
|
### Erreur "Flask not found"
|
|
|
|
```bash
|
|
pip install Flask==3.0.0
|
|
```
|
|
|
|
### Erreur "Port 5001 already in use"
|
|
|
|
Tuer le processus existant :
|
|
|
|
```bash
|
|
lsof -ti:5001 | xargs kill -9
|
|
```
|
|
|
|
Ou changer le port dans `app.py`.
|
|
|
|
### Logs vides
|
|
|
|
Vérifier que le dossier `logs/` existe :
|
|
|
|
```bash
|
|
mkdir -p rpa_vision_v3/logs
|
|
```
|
|
|
|
### Tests non trouvés
|
|
|
|
Vérifier la structure des dossiers :
|
|
|
|
```bash
|
|
ls -la rpa_vision_v3/tests/unit/
|
|
ls -la rpa_vision_v3/tests/integration/
|
|
```
|
|
|
|
## 📝 API Endpoints
|
|
|
|
### GET /api/system/status
|
|
Retourne le statut du système.
|
|
|
|
**Réponse :**
|
|
```json
|
|
{
|
|
"dependencies_ok": true,
|
|
"tests": {
|
|
"unit": 10,
|
|
"integration": 5,
|
|
"performance": 3,
|
|
"total": 18
|
|
},
|
|
"logs_dir": "/path/to/logs",
|
|
"base_dir": "/path/to/rpa_vision_v3"
|
|
}
|
|
```
|
|
|
|
### GET /api/tests
|
|
Liste tous les tests disponibles.
|
|
|
|
**Réponse :**
|
|
```json
|
|
{
|
|
"tests": [
|
|
{
|
|
"name": "test_fusion_engine",
|
|
"path": "tests/unit/test_fusion_engine.py",
|
|
"type": "unit",
|
|
"status": "unknown"
|
|
}
|
|
]
|
|
}
|
|
```
|
|
|
|
### POST /api/tests/run
|
|
Lance un test spécifique.
|
|
|
|
**Requête :**
|
|
```json
|
|
{
|
|
"test_path": "tests/unit/test_fusion_engine.py"
|
|
}
|
|
```
|
|
|
|
**Réponse :**
|
|
```json
|
|
{
|
|
"success": true,
|
|
"returncode": 0,
|
|
"stdout": "...",
|
|
"stderr": "..."
|
|
}
|
|
```
|
|
|
|
### POST /api/tests/run-all
|
|
Lance tous les tests d'un type.
|
|
|
|
**Requête :**
|
|
```json
|
|
{
|
|
"type": "unit" // ou "integration", "performance", "all"
|
|
}
|
|
```
|
|
|
|
**Réponse :**
|
|
```json
|
|
{
|
|
"success": true,
|
|
"returncode": 0,
|
|
"stdout": "...",
|
|
"stderr": "..."
|
|
}
|
|
```
|
|
|
|
### GET /api/logs
|
|
Récupère les logs récents.
|
|
|
|
**Réponse :**
|
|
```json
|
|
{
|
|
"logs": [
|
|
{
|
|
"timestamp": "2024-11-24T10:30:00",
|
|
"file": "app.log",
|
|
"message": "Test completed successfully"
|
|
}
|
|
]
|
|
}
|
|
```
|
|
|
|
## 🚀 Utilisation en Production
|
|
|
|
Pour un déploiement en production, utiliser **gunicorn** :
|
|
|
|
```bash
|
|
pip install gunicorn
|
|
gunicorn -w 4 -b 0.0.0.0:5001 app:app
|
|
```
|
|
|
|
## 📄 Licence
|
|
|
|
Même licence que RPA Vision V3.
|
|
|
|
## 🤝 Contribution
|
|
|
|
Pour contribuer :
|
|
1. Améliorer l'interface (CSS, JavaScript)
|
|
2. Ajouter des graphiques de métriques
|
|
3. Ajouter des filtres de logs
|
|
4. Améliorer la gestion des erreurs
|
|
|
|
---
|
|
|
|
**Créé pour RPA Vision V3** - Dashboard de monitoring et de tests
|