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

5.3 KiB
Executable File
Raw Blame History

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 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 pour distinguer :

  • 0 → Affiche "0" (valeur technique valide)
  • null → Affiche "N/A" (données manquantes)

📦 Fichiers Modifiés

Fichier Lignes Description
scripts/bench.sh 241-245 Calcul correct des cores CPU
frontend/js/device_detail.js 129-130 Affichage CPU corrigé
frontend/js/device_detail.js 183-193 Affichage RAM corrigé

Vérification

Services Actifs

✓ Backend:  http://localhost:8007  (UP)
✓ Frontend: http://localhost:8087  (UP - redémarré)
✓ iPerf3:   Port 5201             (UP)

Correctifs Appliqués

✓ 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 VERIFIER_MISE_A_JOUR.sh

🎯 Action Requise

Pour que les changements soient visibles dans l'interface web, vous devez lancer un nouveau benchmark :

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 :

{
  "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 :

{
  "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

🔍 Dépannage

Le frontend n'affiche toujours pas les bonnes données

  1. Vérifier que le benchmark a bien été exécuté :
curl http://localhost:8007/api/devices/1 | jq '.last_hardware_snapshot.cpu_cores'
  1. Vider le cache du navigateur :
Ctrl + Shift + R (ou Cmd + Shift + R sur Mac)
  1. Redémarrer le frontend si nécessaire :
docker compose restart frontend

Le script benchmark échoue

# 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