Ускорьте командлет PowerShell Get-Counter - PullRequest
1 голос
/ 15 апреля 2019

Командлет `Get-Counter '\ Process (*) [счетчик процессов]' работает медленно.

  1. Есть ли способ перехватить поток вывода командлета Get-Counter, и это будет быстрее?
  2. Можно ли выполнить командлет Get-Counter таким образом, чтобы выход обновлялся так же быстро, как обновляется та же информация в системном мониторе или диспетчере задач?

Примеры:

Get-Counter '\Process(*)\ID Process' -EA SilentlyContinue | 
        Select -Expand CounterSamples | Select InstanceName, CookedValue
Get-Counter '\Process(*)\% Processor Time' -EA SilentlyContinue | 
        Select -Expand CounterSamples | Select CookedValue
Get-Counter '\Process(*)\Working Set - Private' -EA SilentlyContinue | 
        Select -Expand CounterSamples | Select CookedValue

1 Ответ

2 голосов
/ 15 апреля 2019

Значение Get-Counter по умолчанию "-SampleInterval" уже установлено на минимальное значение 1 секунда (https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.diagnostics/get-counter?view=powershell-5.1).

). Таким образом, в ответ на ваш первый вопрос, да, вы можете захватить выходные данные каждого Get-Встречный вызов файла журнала с помощью команды Out-File, а затем вы можете подключить этот файл журнала. Тем не менее, вы все равно будете ограничены интервалом выборки в 1 секунду.

Ваш второй вопрос также ограничен 1 секундойинтервал выборки, поэтому №

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...