【 Get-Counter 】コマンドレット――システムのパフォーマンスを計測する:Windows PowerShell基本Tips(8)
本連載は、Windows PowerShellコマンドレットについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、「Get-Counter」コマンドレットです。
本連載では、Windows PowerShellの基本的なコマンドレットについて、基本的な書式からオプション、具体的な実行例までを分かりやすく紹介していきます。今回は、システムのパフォーマンス計測で役に立つ「Get-Counter」コマンドレットです。
Get-Counterコマンドレットとは?
「Get-Counter」は、Windowsシステムのパフォーマンスに関する計測情報を取得するためのコマンドレットです。また、システムのパフォーマンスはGUI管理ツールである「パフォーマンスモニター」でも計測できます。
Get-Counterコマンドレットは、例えば、指定したサンプル間隔でシステムのパフォーマンスを計測したり、他のスクリプト実行が与えるパフォーマンスへの影響を計測したりする際に活用できます。
Get-Counterコマンドレットの主なオプション
Get-Counterコマンドレットの主なオプションは次の通りです。
オプション | 意味 |
---|---|
-Counter | 計測するカウンターを指定する。省略可能 |
-ListSet | カウンターセットの情報を取得する |
-Continuous | [Ctrl]+[C]キーが押されるまで継続的に取得する |
-MaxSamples | 取得するサンプルデータの数を指定する |
-SampleInterval | 計測間隔を秒単位で指定する |
システムのパフォーマンスを計測する
最も単純なパフォーマンス計測は、オプションを何も指定せずに「Get-Counter」だけを実行する方法です。このコマンドレットの実行結果では、システムパフォーマンスの概要情報として「ネットワーク」「プロセッサ」「メモリ」「ディスク」に関する既定で登録されたカウンターの計測結果を取得できます。
以下の実行例では、既定で登録されたカウンターの計測結果を取得しています(画面1)。
コマンドレット実行例
Get-Counter
(既定で登録されたパフォーマンスカウンターの計測結果を取得する)
特定のカウンターを計測するには、計測対象の「カウンター名」を調べる必要があります。カウンターは「カウンターセット」と呼ばれるグループで管理されており、「\<カウンターセット名>\<カウンター名>」の形式で指定します。
カウンターセットや、カウンターセットに含まれるカウンターを確認するには、「-ListSet」オプションを使用します。または、「パフォーマンスモニター」からも確認することができます。
以下の実行例では、「Processor」という文字列から始まるカウンターセットの情報を取得しています(画面2)。
コマンドレット実行例
Get-Counter -ListSet Processor*
(「Processor」で始まるカウンターセットの情報を取得する)
カウンター名を調べた上で「Get-Counter -Counter <カウンター>」と指定して実行します。「-Counter」オプションは省略することもできます。
以下の実行例は、「Processor」のカウンターセットに含まれる「Processor Time」カウンターを計測して、結果を取得しています(画面3)。
コマンドレット実行例
Get-Counter "\Processor(_total)\% Processor Time"
(「Processor Time」カウンターの計測結果を取得する)
継続的にパフォーマンスを測定する
「-Continuous」オプションを使用すると、継続的にパフォーマンスを計測することができます。あるプログラムが動作している間など、一定期間の計測結果を得ることができます。
「-Continuous」オプションを使用すると、[Ctrl]+[C]キーが押されるまでの間、1秒間隔で計測が行われます。計測間隔(秒数)を指定したい場合には、「-SampleInterval」オプションを併用します。
以下の実行例では、「Processor Time」カウンターについて、5秒間隔で継続的にパフォーマンスを計測しています(画面4)。
コマンドレット実行例
Get-Counter "\Processor(_total)\% Processor Time" -Continuous -SampleInterval 5
(プロセッサのパフォーマンスを5秒間隔で計測する)
取得するデータの数を指定してパフォーマンスを測定する
前項で紹介した「-Continuous」は、[Ctrl]+[C]キーが押されるまでの間、計測し続けるオプションです。取得するデータの数を指定してパフォーマンスを計測するには、「-MaxSamples」オプションを使用します。
このとき、「-SampleInterval」オプションと組み合わせれば、取得するデータの数と間隔を乗算することで、計測開始から終了までのおおよその時間も把握することができます。
以下の実行例では、「Processor Time」カウンターについて、5秒間隔で3つのサンプルデータが得られるように計測しています(画面5)。この処理にかかる時間は、実行してから約15秒(データ3つ×5秒間隔)です。
コマンドレット実行例
Get-Counter "\Processor(_total)\% Processor Time" -MaxSamples 3 -SampleInterval 5
(プロセッサのパフォーマンスを5秒間隔で計測し、3つのデータを取得する)
筆者紹介
新井 慎太朗(あらい しんたろう)
株式会社ソフィアネットワークに所属。2009年よりマイクロソフト認定トレーナーとして、Windowsを中心としたサーバおよびクライアント管理、仮想化技術に関するトレーニングを提供している。無類の猫好き。共同執筆者である国井家で飼われている猫に夢中。
Copyright © ITmedia, Inc. All Rights Reserved.