相关疑难解决方法(0)

如何使用PowerShell监视进程的CPU利用率?

我正在尝试编写PowerShell脚本来监视SQL Server进程的%CPU利用率.我想每天记录这个号码的快照,以便随着时间的推移监控它并观察趋势.

我在网上的研究表明,这个WMI查询应该给我我想要的东西:

Get-WmiObject -Query "SELECT PercentProcessorTime FROM win32_PerfFormattedData_PerfProc_Process WHERE Name='SqlServr'"
Run Code Online (Sandbox Code Playgroud)

当我运行WMI查询时,我通常会得到介于30-50%之间的值 在此输入图像描述

但是,当我在资源监视器中查看进程时,通常平均CPU使用率不到1% SQL Server平均CPU利用率

我知道WMI查询只是返回CPU使用率的快照,而不是很长一段时间内的平均值,因此我知道这两者不能直接比较.即便如此,我认为快照通常应该小于1%,因为资源监视器的平均值小于1%.

有没有人对为何存在如此大的差异有任何想法?以及如何准确测量过程的CPU使用率?

sql-server powershell wmi

10
推荐指数
2
解决办法
2万
查看次数

标签 统计

powershell ×1

sql-server ×1

wmi ×1