#powercli
#powercli
Вопрос:
Как мне получить загрузку процессора и памяти в процентах от числа хостов?
Get-VMHost | Export-Csv "C:checks.csv"
это дает мне выходные данные в МГц
Get-VMHost | Export-Csv "C:checks.csv"
Ответ №1:
Для выполнения этой задачи вам понадобится пара приемов PowerShell.
Сначала вычисляемые свойства. У Get-VMHost нет существующего свойства, состоящего из процентных значений использования процессора или памяти. Однако в нем содержатся как данные об использовании, так и общие суммы, из которых мы можем составить процент. Чтобы отобразить это, мы будем использовать так называемое вычисляемое свойство, которое позволит нам создать пользовательское свойство в форме хэш-таблицы, где мы выполняем это вычисление во время выполнения.
Пример: @{Name = 'CpuUsage'; Expression = {$_.CpuUsageMhz / $_.CpuTotalMhz}}
Во-вторых, нам нужно преобразовать вычисленное значение во что-то более понятное. Мы можем использовать спецификатор формата, который является частью ToString
метода.
Пример: @{Name = 'CpuUsage'; Expression = {($_.CpuUsageMhz / $_.CpuTotalMhz).ToString("P")}}
В итоге ваш код должен выглядеть примерно следующим образом:
Get-VMHost | select Name, ConnectionState, PowerState, @{Name = 'CpuUsage'; Expression = {($_.CpuUsageMhz / $_.CpuTotalMhz).ToString("P")}}, @{Name = 'MemoryUsage'; Expression = {($_.MemoryUsageGB / $_.MemoryTotalGB).ToString("P")}}, Version | Export-Csv "C:checks.csv"