Pemanfaatan proses yang salah dari Sistem diperpanjang acara kesehatan?

10

Saya baru-baru ini bekerja untuk memahami data atau metrik yang disimpan dalam file peristiwa peristiwa kesehatan yang diperluas.

Kami mencoba menerapkan pengumpulan data metrik kinerja menggunakan kesehatan sistem seperti yang disediakan di sini

Ada laporan yang memberikan metrik seperti PENGGUNAAN CPU, pemanfaatan proses lain, dll. Dikumpulkan dari peristiwa kesehatan sistem yang bernama

scheduler_monitor_system_health_ring_buffer_recorded

Saya tidak dapat memahami beberapa server sibuk saya mengapa bidang "process_utilization" yang tercantum dalam laporan sebagai penggunaan SQL CPU sebagian besar waktu di atas 100. Pada waktu puncak bervariasi antara 120-160 dan karenanya laporan tersebut selalu menunjukkan CPU di atas 100 meskipun ketika saya memeriksa dari monitor aktivitas server itu tidak pernah terjadi.

Saya telah mengangkat masalah ini di Github tetapi sepertinya tidak ada perbaikan atau respons.

Karena itu, pertanyaan saya adalah

  1. Bagaimana saya bisa mendapatkan angka akurat untuk pemanfaatan SQL CPU untuk server saya menggunakan buffer cincin kesehatan sistem yang direkam?

  2. Laporan juga menunjukkan penghitung untuk 2 bidang di bawah yang dihitung per laporannya

  1. 100-System_idle-process_utilization sebagai OtherProcessUtil

  2. 100-system_idle sebagai SystemUtil

Apa yang dibutuhkan / membantu OtherProcessUtil dan SystemUtil ini ?

  1. Saya juga melihat pemanfaatan memori setiap waktu selalu menunjukkan 100. Itu tampaknya tidak benar juga. Adakah yang memperhatikannya?

Alat lain seperti Idera & penjaga [yang saya uji] tidak menunjukkan penggunaan CPU di atas 100% untuk server yang sama. Saya melakukan perbandingan berdampingan untuk beban yang sama.

Pemula DBA
sumber

Jawaban:

1

Nilai untuk penghitung disk dan prosesor% yang melebihi 100% Harus dibagi dengan jumlah prosesor atau disk yang ada dalam sistem. Jadi 100% berarti menggunakan 100% dari satu prosesor. 250% berarti menggunakan dua setengah prosesor. Jadi jika itu melaporkan 120%, lihat apakah itu setara dengan 120 / <jumlah prosesor>.

Perhatikan bahwa perubahan terbaru ke tigertools adalah Juni 2018. Anda mungkin melihat sqlwatch.io karena tampaknya itu adalah proyek yang jauh lebih aktif.

Lihat social.msdn.microsoft.com/Forums/sqlserver/en-US/… dan ubah saja menjadi TOP (1) untuk mendapatkan penggunaan SQL CPU saat ini.

- Tony Hinkle

mv ٠〳memenangkan ٠〳menjawab
sumber