lrosa
lrosa

Reputation: 200

Sending a Refresh() to WMI in PowerShell

In a PowerShell script I am trying to get the number of page faults per second with this command:

(Get-WmiObject Win32_PerfFormattedData_PerfOS_memory).PageFaultsPersec

Unfortunately, it reads always the same value because I don't Refresh() the performance counter.

How can I send a Refresh() method to Performance Data via PowerShell?

Upvotes: 2

Views: 2400

Answers (1)

stej
stej

Reputation: 29479

You can get the value using performance counters:

Get-Counter '\Memory\Page Faults/sec'

However, if I call you code in a loop, it works without problems (although it is better practise to first store the wmi object).

1..10 | % { sleep -sec 2; (Get-WmiObject Win32_PerfFormattedData_PerfOS_memory).PageFaultsPersec }

Upvotes: 2

Related Questions