Метрики производительности с использованием WMI и PowerShell - PullRequest
0 голосов
/ 21 февраля 2019

Контекст

  • Профилирование ресурса, используемого приложением .NET во время теста производительности
  • Инкапсуляция извлеченных метрик в существующий инструмент производительности
  • Метрикачастота дискретизации составляет приблизительно 5 секунд

Возможное решение

Анализируя возможности WMI и PowerShell, я понял, что могу использовать их для генерации потока данныхс необходимыми метриками с помощью команды Get-WmiObject .

Сомнение

Копание в доступных классах WMI, ориентированных на "мир NETCLR" Я обнаружил, по-видимому,дублирование имен классов:

 - Win32_PerfFormattedData_<class_name>
 - Win32_PerfRawData_<class_name>

Я добавляю пример PowerShell для фильтрации класса «Память»:

(Get-WmiObject -List | Where-Object { $_.Name -like '*NETCLR*Memory'}).ForEach({ $_.Name })

и получаю следующие классы:

 - Win32_PerfFormattedData_NETFramework_NETCLRMemory
 - Win32_PerfRawData_NETFramework_NETCLRMemory

эти два класса, очевидно, имеют одинаковую структуру / свойства.

Вопросы

  • Кроме форматирования данных, два класса имеют больше различий?
  • Возможно ли этоиспользовать их для профилинг под тестовое приложение?

С уважением

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