# ✅ Mise à Jour Complète - 14 décembre 2025 ## 📋 Résumé L'application a été mise à jour avec des **correctifs critiques** pour résoudre les problèmes d'affichage des données hardware. ## 🔧 Problèmes Résolus ### 1. Nombre de Cores CPU Incorrect **Symptôme** : Le frontend affichait "?" pour les cores CPU, et la base de données contenait `cpu_cores: 0`. **Cause** : Le script benchmark collectait le nombre de **threads logiques** au lieu des **cores physiques**. **Solution** : Modification du script [bench.sh](scripts/bench.sh#L241-L245) pour calculer : ``` cpu_cores = Core(s) per socket × Socket(s) ``` **Exemple** : - Intel i5-2400 : `2 cores × 1 socket = 2 cores` ✅ (au lieu de 4) - AMD Ryzen 9 5900X : `12 cores × 1 socket = 12 cores` ✅ (au lieu de 24) ### 2. RAM Utilisée/Libre Manquante **Symptôme** : Le frontend affichait "N/A" pour RAM utilisée et RAM libre. **Cause** : Les données étaient `null` dans la base de données (ancien benchmark). **Solution** : - Le script collecte déjà ces données correctement - Nécessite simplement un **nouveau benchmark** pour les remplir ### 3. Affichage Frontend Incorrect **Symptôme** : Valeur `0` affichée comme "N/A" et valeur `null` affichée comme "0 GB". **Solution** : Amélioration de [device_detail.js](frontend/js/device_detail.js#L129-L193) pour distinguer : - `0` → Affiche "0" (valeur technique valide) - `null` → Affiche "N/A" (données manquantes) ## 📦 Fichiers Modifiés | Fichier | Lignes | Description | |---------|--------|-------------| | [scripts/bench.sh](scripts/bench.sh) | 241-245 | Calcul correct des cores CPU | | [frontend/js/device_detail.js](frontend/js/device_detail.js) | 129-130 | Affichage CPU corrigé | | [frontend/js/device_detail.js](frontend/js/device_detail.js) | 183-193 | Affichage RAM corrigé | ## ✅ Vérification ### Services Actifs ```bash ✓ Backend: http://localhost:8007 (UP) ✓ Frontend: http://localhost:8087 (UP - redémarré) ✓ iPerf3: Port 5201 (UP) ``` ### Correctifs Appliqués ```bash ✓ Script bench.sh : Correctif CPU cores ✓ Frontend JS : Amélioration affichage CPU ✓ Frontend JS : Amélioration affichage RAM ``` ### Test de Collecte (machine actuelle) ``` Cores physiques: 2 Threads logiques: 4 ``` Vous pouvez exécuter le script de vérification : ```bash bash VERIFIER_MISE_A_JOUR.sh ``` ## 🎯 Action Requise Pour que les changements soient visibles dans l'interface web, **vous devez lancer un nouveau benchmark** : ```bash cd /home/gilles/Documents/vscode/serv_benchmark sudo bash scripts/bench.sh ``` ### Ce que le benchmark va faire : 1. ✅ Collecter le nombre de **cores physiques** (corrigé) 2. ✅ Collecter **RAM utilisée**, **RAM libre**, **RAM partagée** 3. ✅ Collecter les **données SMART** des disques 4. ✅ Collecter le **layout détaillé** de la RAM (barrettes DIMM) 5. ✅ Envoyer toutes les données au backend **Durée estimée** : 3-5 minutes ## 📊 Avant vs Après ### Avant le Benchmark (Données Actuelles) **API** : ```json { "cpu_cores": 0, "cpu_threads": 4, "ram_used_mb": null, "ram_free_mb": null } ``` **Frontend** : ``` Cores / Threads: ? / 4 RAM Utilisée: N/A RAM Libre: N/A ``` ### Après le Benchmark (Données Attendues) **API** : ```json { "cpu_cores": 2, "cpu_threads": 4, "ram_used_mb": 6818, "ram_free_mb": 379 } ``` **Frontend** : ``` Cores / Threads: 2 / 4 RAM Utilisée: 7 GB (87%) RAM Libre: 0 GB ``` ## 🌐 Tester l'Interface ### Avant le Benchmark ``` http://localhost:8087/device_detail.html?id=1 ``` → Affichera "N/A" pour les données manquantes (comportement correct) ### Après le Benchmark ``` http://localhost:8087/device_detail.html?id=1 ``` → Affichera toutes les données avec les **valeurs correctes** ✅ ## 📚 Documentation - **Guide détaillé** : [CHANGELOG_2025-12-14.md](CHANGELOG_2025-12-14.md) - **Frontend restructuré** : [FRONTEND_RESTRUCTURE_2025-12-14.md](FRONTEND_RESTRUCTURE_2025-12-14.md) - **Test rapide** : [TEST_RAPIDE.md](TEST_RAPIDE.md) - **Instructions benchmark** : [INSTRUCTIONS_BENCHMARK.md](INSTRUCTIONS_BENCHMARK.md) ## 🔍 Dépannage ### Le frontend n'affiche toujours pas les bonnes données 1. Vérifier que le benchmark a bien été exécuté : ```bash curl http://localhost:8007/api/devices/1 | jq '.last_hardware_snapshot.cpu_cores' ``` 2. Vider le cache du navigateur : ``` Ctrl + Shift + R (ou Cmd + Shift + R sur Mac) ``` 3. Redémarrer le frontend si nécessaire : ```bash docker compose restart frontend ``` ### Le script benchmark échoue ```bash # Vérifier les permissions sudo sudo -v # Vérifier les dépendances which sysbench fio iperf3 smartctl # Voir les logs backend docker compose logs backend --tail 50 ``` ## 🎉 Résultat Final Une fois le benchmark exécuté avec succès : ✅ **8 sections distinctes** dans l'interface : 1. ⚡ Carte Mère 2. 🔲 Processeur (CPU) - avec le **bon nombre de cores** 3. 💾 Mémoire (RAM) - avec **usage réel** 4. 💿 Stockage (Disques) 5. 🎮 Carte Graphique (GPU) 6. 🌐 Réseau (Network) 7. 🐧 Système d'exploitation 8. 📊 Résultats Benchmarks ✅ **Toutes les données affichées correctement** ✅ **Distinction claire entre 0, null et valeurs réelles** ✅ **Frontend responsive et organisé** --- **Version Script** : 1.2.0 **Version Frontend** : 2.0.1 **Date** : 14 décembre 2025, 03:00 **Status** : ✅ Prêt pour le benchmark