Files
serv_benchmark/docs/README_MISE_A_JOUR.md
Gilles Soulier c67befc549 addon
2026-01-05 16:08:01 +01:00

212 lines
5.3 KiB
Markdown
Executable File
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# ✅ 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