Saya perlu pemanfaatan CPU rata-rata dari 15 menit terakhir. Saya membutuhkan nilai dari baris perintah atau di PowerShell.
Apakah Windows tetap menggunakan rata-rata penggunaan CPU dari 15 menit terakhir? (pada dasarnya mirip dengan ketika Anda mengetik "uptime" di Linux dan mendapatkan rata-rata bergulir beban CPU dari 1, 5, dan 15 menit terakhir). Jika tidak, opsi apa lagi yang ada untuk mendapatkan nilai ini, atau apakah ada pendekatan yang sama sekali berbeda yang harus saya ambil untuk memantau apakah server saya rata-rata dalam 15 menit terakhir mengalami tekanan berat?
(Saya tahu cara yang sangat tidak efisien untuk melakukan ini: masuk ke disk, lalu baca log dan hitung rata-rata secara manual. Kira-kira seperti ini (PowerShell):
# Initialize a perf counter
logman.exe create counter DashboardCpuTime -c "\processor(_total)\% processor time" -a --cnf --v -f bincirc -max 1 -o "c:\perflogs\DashboardCpuTime.blg" -si 00:00:10
logman.exe start DashboardCpuTime
# Get the average value by stopping, reading the log, calculating the average in PowerShell, and starting again
logman.exe stop DashboardCpuTime
(Import-Counter -Path "c:\perflogs\DashboardCpuTime.blg" -Counter @("\processor(_total)\% processor time") | ForEach-Object { $_.CounterSamples.CookedValue } | Measure-Object -Average).Average
logman.exe start DashboardCpuTime
tapi saya tidak puas dengan overhead dan kompleksitasnya, dan fakta bahwa sampel yang diambil setiap 10 detik masih bernilai instan, dan bukan rata-rata 10 detik)