BUG: SystemMetricsProvider — CPU approximatif (4 logical CPUs) #22

Closed
opened 2026-08-10 21:02:20 +02:00 by nonobis · 0 comments
Owner

🎯 Contexte

La métrique CPU envoyée au heartbeat est une approximation basée sur un nombre fixe de CPUs, pas sur la vraie topologie.

📚 Référence spec (MASTER_SPECIFICATION.md v2.0)

Métriques heartbeat (résolu 08/2026) : CpuUsagePercent/MemoryUsageBytes/DiskUsagePercent/UptimeSeconds transportées jusqu'à l'entité Agent

🔍 État actuel (vérifié dans le code)

SystemMetricsProvider : elapsedMs * 4.0 (commentaire « 4 logical CPUs ») — faux sur les machines avec ≠ 4 cœurs ; GetCpuCount existe peut-être mais le calcul ne l'utilise pas.

🧩 À faire

  • Utiliser le nombre réel de CPUs (Environment.ProcessorCount ou /proc/cpuinfo)
  • Vérifier le calcul de pourcentage (delta idle/total)
  • Tests

🧪 Critères d'acceptation

  • CPU% cohérent avec top sur une machine à N cœurs

📁 Fichiers concernés

src/Heimdall.Agent/Services/SystemMetricsProvider.cs

## 🎯 Contexte La métrique CPU envoyée au heartbeat est une approximation basée sur un nombre fixe de CPUs, pas sur la vraie topologie. ## 📚 Référence spec (MASTER_SPECIFICATION.md v2.0) **Métriques heartbeat** (résolu 08/2026) : CpuUsagePercent/MemoryUsageBytes/DiskUsagePercent/UptimeSeconds transportées jusqu'à l'entité Agent ## 🔍 État actuel (vérifié dans le code) `SystemMetricsProvider` : `elapsedMs * 4.0` (commentaire « 4 logical CPUs ») — faux sur les machines avec ≠ 4 cœurs ; `GetCpuCount` existe peut-être mais le calcul ne l'utilise pas. ## 🧩 À faire - [ ] Utiliser le nombre réel de CPUs (Environment.ProcessorCount ou /proc/cpuinfo) - [ ] Vérifier le calcul de pourcentage (delta idle/total) - [ ] Tests ## 🧪 Critères d'acceptation - [ ] CPU% cohérent avec `top` sur une machine à N cœurs ## 📁 Fichiers concernés src/Heimdall.Agent/Services/SystemMetricsProvider.cs
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
nonobis/Heimdall#22
No description provided.