130 lines
4.0 KiB
Markdown
Executable File
130 lines
4.0 KiB
Markdown
Executable File
# Test du script bench.sh avec corrections
|
|
|
|
## Corrections appliquées
|
|
|
|
1. ✅ **Migration 002 appliquée** - Ajout de la colonne `network_results_json` à la table `benchmarks`
|
|
2. ✅ **Payload RAM corrigé** - Ajout de `used_mb`, `free_mb`, `shared_mb` dans le payload JSON
|
|
3. ✅ **Mode debug implémenté** - Variable `DEBUG_PAYLOAD=1` pour afficher le payload complet
|
|
|
|
## Comment tester
|
|
|
|
### Test normal (sans debug)
|
|
```bash
|
|
sudo bash /home/gilles/Documents/vscode/serv_benchmark/scripts/bench.sh
|
|
```
|
|
|
|
### Test avec debug (affiche le payload)
|
|
```bash
|
|
DEBUG_PAYLOAD=1 sudo bash /home/gilles/Documents/vscode/serv_benchmark/scripts/bench.sh
|
|
```
|
|
|
|
Le mode debug va :
|
|
1. Afficher le payload JSON complet formaté
|
|
2. Sauvegarder le fichier dans `/tmp/bench_payload_YYYYMMDD_HHMMSS.json`
|
|
3. Demander confirmation avant d'envoyer
|
|
|
|
## Problèmes résolus
|
|
|
|
### 1. Erreur HTTP 500
|
|
**Cause** : Colonne `network_results_json` manquante dans la base de données
|
|
**Solution** : Migration SQL appliquée directement via Docker
|
|
|
|
```sql
|
|
ALTER TABLE benchmarks ADD COLUMN network_results_json TEXT;
|
|
```
|
|
|
|
### 2. Données RAM manquantes dans le payload
|
|
**Cause** : Le script collectait les données (used_mb, free_mb, shared_mb) mais ne les incluait pas dans le payload JSON
|
|
**Solution** : Ajout des champs dans la construction du payload (lignes 869-871 du script)
|
|
|
|
**Avant** :
|
|
```javascript
|
|
ram: {
|
|
total_mb: .total_mb,
|
|
slots_total: .slots_total,
|
|
// ... manque used_mb, free_mb, shared_mb
|
|
}
|
|
```
|
|
|
|
**Après** :
|
|
```javascript
|
|
ram: {
|
|
total_mb: .total_mb,
|
|
used_mb: .used_mb, // ✅ AJOUTÉ
|
|
free_mb: .free_mb, // ✅ AJOUTÉ
|
|
shared_mb: .shared_mb, // ✅ AJOUTÉ
|
|
slots_total: .slots_total,
|
|
// ...
|
|
}
|
|
```
|
|
|
|
### 3. Debug du payload
|
|
**Implémentation** : Mode debug avec variable d'environnement
|
|
|
|
```bash
|
|
# Activer le debug
|
|
DEBUG_PAYLOAD=1 sudo bash scripts/bench.sh
|
|
|
|
# Le script affichera :
|
|
# ════════════════════════════════════════════════════════
|
|
# DEBUG: Payload JSON complet
|
|
# ════════════════════════════════════════════════════════
|
|
# {
|
|
# "device_identifier": "lenovo-bureau",
|
|
# "bench_script_version": "1.1.0",
|
|
# "hardware": {
|
|
# "cpu": { ... },
|
|
# "ram": {
|
|
# "total_mb": 7771,
|
|
# "used_mb": 4530, // ✅ Maintenant présent
|
|
# "free_mb": 1291, // ✅ Maintenant présent
|
|
# "shared_mb": 1950, // ✅ Maintenant présent
|
|
# ...
|
|
# },
|
|
# ...
|
|
# },
|
|
# "results": {
|
|
# "network": {
|
|
# "upload_mbps": 427.86,
|
|
# "download_mbps": 398.94,
|
|
# "ping_ms": 44.16,
|
|
# ...
|
|
# }
|
|
# }
|
|
# }
|
|
# ════════════════════════════════════════════════════════
|
|
# ✓ Payload sauvegardé dans: /tmp/bench_payload_20251207_233745.json
|
|
#
|
|
# Appuyez sur Entrée pour continuer l'envoi ou Ctrl+C pour annuler...
|
|
```
|
|
|
|
## Vérification frontend
|
|
|
|
Après un nouveau benchmark réussi, vérifier dans l'interface web :
|
|
|
|
1. **Section RAM** : Doit afficher le pourcentage d'utilisation et les détails
|
|
```
|
|
💾 RAM: 8 GB (58% utilisé)
|
|
Utilisée: 4GB • Libre: 1GB • Partagée: 2GB
|
|
4 / 4 slots
|
|
```
|
|
|
|
2. **Section Réseau** : Doit afficher les interfaces avec WoL et les résultats iperf3
|
|
```
|
|
🔌 eno1 (ethernet) [WoL ✓]
|
|
IP: 10.0.1.169
|
|
MAC: xx:xx:xx:xx:xx:xx
|
|
Vitesse: 1000 Mbps
|
|
|
|
📈 Résultats Benchmark Réseau (iperf3)
|
|
↑ 427.86 ↓ 398.94 44.16 41.34
|
|
Upload Mbps Download Mbps Ping ms Score
|
|
```
|
|
|
|
## Prochaines étapes
|
|
|
|
1. Lancer un nouveau benchmark : `sudo bash scripts/bench.sh`
|
|
2. Vérifier qu'il n'y a plus d'erreur HTTP 500
|
|
3. Consulter la page device detail dans l'interface web
|
|
4. Vérifier l'affichage des nouvelles données RAM et réseau
|