WMI 查询或 Powershell 命令,用于检索 Hyper-V 历史 CPU 和内存使用情况的样本

WMI 查询或 Powershell 命令,用于检索 Hyper-V 历史 CPU 和内存使用情况的样本

我需要以编程方式检索 Hyper-V 系统上最近的 CPU 和内存使用情况样本,如客户操作系统所示。最近是指最近几分钟内的情况。

我无法自定义目标 Hyper-V 系统(无论是主机还是客户机)。因此我无法配置性能日志或安装自定义功能。

我希望通过 WMI 查询来执行此操作,但无法识别提供历史 CPU 或内存的 WMI 类。

我尝试了 get-counter (參考) cmd,但它不会提取历史数据。相反,它似乎在我运行 cmd 时开始采样。所以不符合我的需求。

Get-ClusterPerformanceHistory 命令 (參考) 看起来很有希望,但它需要 Windows 存储空间功能,这对我来说是不可行的。

有没有办法通过 WMI 查询或 powershell cmd 来完成我需要的操作?

答案1

好吧,你运气不好。你无法得到没有记录的东西。你需要使用性能监视器的 API - 但它只在有指示时才会记录,除非有人配置了它 - 而你无法这样做(因为这是系统中的更改) - 告诉给你这个任务的人与圣诞老人交谈。

Get-ClusterPerformanceHistory 命令(参考)看起来很有希望,但它需要 Windows 存储空间功能

为什么你会这么说,因为这个功能 90% 依赖于集群的存储空间,并且主要为此记录数据。

相关内容