使用 cmdlet:
Get-Counter -ComputerName $server '\Processor(*)\% Processor Time'
-要不就-
Get-Counter -ComputerName $server
我收到错误信息:
get-counter : The specified object was not found on the computer.
At line:1 char:1
+ get-counter -ComputerName '********' '\Processor(*)\% Processor Time ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidResult: (:) [Get-Counter], Exception
+ FullyQualifiedErrorId : CounterApiError,Microsoft.PowerShell.Commands.GetCounterCommand
我已经在其他 3 台几乎相同的 Windows [2000] 服务器上正确运行了此程序,但无法在此服务器上报告。VM 已重新启动多次。此外,服务器统计信息正在向 VM 管理器正确报告。
知道什么获取计数器正在尝试通信,为什么它说未找到指定的对象?
答案1
找到 Windows Server 2000 的明确答案将是一项挑战,但错误听起来与一篇常用文章中描述的完全一样:“手动重建 Windows Server 2008 64 位或 Windows Server 2008 R2 系统的性能计数器“并且我希望解决方案是一样的。
通常,使用性能计数器时会出现“未找到对象”错误,这表明一个或多个性能计数器已损坏,需要重建。
引用文章,以防链接失效:
1. 检查注册表以确保您要使用的计数器未被禁用。
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\%servicename%\Performance
- 值为 1 表示计数器被禁用。
- 值为 2 表示 32 位计数器被禁用。
- 值为 4 表示 64 位计数器被禁用。
2.重建计数器:
cd c:\windows\system32
lodctr /R
cd c:\windows\sysWOW64
lodctr /R
3. 使用 Windows 管理规范 (WMI) 重新同步计数器:
WINMGMT.EXE /RESYNCPERF
4. 停止并重新启动性能日志和警报服务。
5. 停止并重新启动 Windows Management Instrumentation 服务。
6. 创建一个新的数据收集器集(不要使用现有的数据收集器集)。