Di recente ho lavorato sulla comprensione dei dati o delle metriche archiviate nel file degli eventi degli eventi estesi sulla salute del sistema.
Stiamo provando a implementare la raccolta di dati delle metriche delle prestazioni utilizzando lo stato del sistema come fornito qui
Esistono report che forniscono metriche come UTILIZZAZIONE CPU, altro utilizzo del processo ecc. Raccolte dall'evento di integrità del sistema denominato
scheduler_monitor_system_health_ring_buffer_recorded
Non riesco a capire per alcuni dei miei server occupati perché il campo "process_utilization" che è elencato nel rapporto come utilizzo della CPU SQL è il più delle volte superiore a 100. Nelle ore di punta varia tra 120-160 e per cui il rapporto è mostrando sempre CPU sopra 100 anche se quando ho controllato dal monitor attività server non è mai il caso.
Ho sollevato questo problema in Github ma non sembra esserci alcuna correzione o risposta.
Pertanto, la mia domanda sarebbe
Come posso ottenere un numero preciso per l'utilizzo della CPU SQL per i miei server utilizzando il buffer dell'anello di integrità del sistema registrato?
Il rapporto mostra anche il contatore per i 2 campi inferiori calcolati per il loro rapporto
100-System_idle-process_utilization come OtherProcessUtil
100-system_idle come SystemUtil
Per cosa sono utili / utili questi OtherProcessUtil e SystemUtil ?
- Vedo anche l'utilizzo della memoria ogni volta che viene sempre visualizzato come 100. Anche questo non sembra corretto. Qualcuno l'ha notato?
Altri strumenti come Idera e sentry [che ho testato] non mostrano un utilizzo della CPU superiore al 100% per gli stessi server. Ho fatto un confronto fianco a fianco per lo stesso carico.