PowerShellでパフォーマンス情報を取得する

PowerShellでリモートサーバのCPU使用率、メモリ使用率、ディスク使用率の情報を取得します。

CPU使用率

PS C:\Users\user1> Get-WmiObject -ComputerName localhost Win32_PerfFormattedData_PerfOS_Processor | Select Name,PercentProcessorTime

Name   PercentProcessorTime
----   --------------------
_Total                    4
0                         5
1                         5
2                         0
3                         5
4                         0
5                         5
6                         0
7                        11

メモリ使用率

PS C:\Users\user1> Get-WmiObject -ComputerName localhost Win32_OperatingSystem | %{(($_.TotalVisibleMemorySize - $_.FreePhysicalMemory)/$_.TotalVisibleMemorySize) * 100}

55.7645735990054

ディスク使用率

PS C:\Users\user1> Get-WmiObject -ComputerName localhost Win32_LogicalDisk -Filter DriveType=3 | select DeviceID, @{N="% Used";E={($_.Size-$_.FreeSpace)/$_.Size*100}}

DeviceID           % Used
--------           ------
C:       15.6989519134962
E:       60.7720861354985

Select-Objectに指定する集計プロパティの書式は、@{N="ラベル";E={値を返すスクリプトブロック}}のように連想配列で指定します。NはName、EはExpressionのように省略せずに指定しても問題ありません。

ただ、上記だと小数点以下の桁数が多すぎるので小数点1位で四捨五入させます。
またドライブレターが多い場合に昇順にならない可能性があるので明示的にソートさせます。

PS C:\Users\user1> Get-WmiObject -ComputerName localhost Win32_LogicalDisk -Filter DriveType=3 | select DeviceID, @{N="% Used";E={"{0:N1}" -f (($_.Size-$_.FreeSpace)/$_.Size*100)}} | Sort-Object DriveID

DeviceID % Used
-------- ------
C:       15.7  
E:       60.8  

ここまできたら他の項目も欲しくなったので、以下の項目を取得しました。
ドライブレター/総容量/使用容量/空き容量/使用率/空き率

PS C:\Users\user1> Get-WmiObject -ComputerName localhost Win32_LogicalDisk -Filter DriveType=3 | select DeviceID, @{N="Capacity(GB)";E={"{0:N0}" -f ($_.Size/1GB)}}, @{N="Used Space(GB)";E={"{0:N0}" -f (($_.Size-$_.FreeSpace)/1GB)}}, @{N="Free Space";E={"{0:N0}" -f (($_.FreeSpace)/1GB)}}, @{N="% Used";E={"{0:N1}" -f (($_.Size-$_.FreeSpace)/$_.Size*100)}},@{N="% Free";E={"{0:N1}" -f (($_.FreeSpace)/$_.Size*100)}} | Sort-Object DriveID

DeviceID       : C:
Capacity(GB)   : 920
Used Space(GB) : 144
Free Space     : 775
% Used         : 15.7
% Free         : 84.3

DeviceID       : E:
Capacity(GB)   : 2,795
Used Space(GB) : 1,698
Free Space     : 1,096
% Used         : 60.8
% Free         : 39.2
タイトルとURLをコピーしました