Azure VM のパフォーマンス ログを解析するには

こんにちは。Azure サポートの宇田です。
今回は Azure 仮想マシン等のパフォーマンス ログを解析する方法についてご紹介します。

Azure 上の仮想マシンで診断ログを有効にする


Azure 上の仮想マシンでパフォーマンス ログを採取するには、事前に診断ログを有効化しておく必要があります。

仮想マシンの設定から、[診断] を開き、[オン] としたうえでログ記録先のストレージを選択します。
パフォーマンス ログをとるには、[基本メトリック] をはじめとする各種 "メトリック" にチェックし、[保存] するだけです。
(Windows / Linux や、仮想マシンに導入されたエージェントのバージョンによって表示されるメトリックに差異があります)

EnableDiag

なお、[起動の診断] も仮想マシンに接続できない際のトラブルシューティングに便利ですので、一緒に有効化しておきましょう。

 

保存されたログを確認する


採取されたログは、指定したストレージ アカウントの Table に記録されています。

各種ストレージ エクスプローラーでも Table ストレージの生データを確認する事ができますが、ログが膨大になると表示が重くなりますので、日付などでフィルターできる Visual Studio か Excel (2013 or 2016) がおすすめです。

今回は Excel 2016 を使って、読み込んだデータをもとにグラフ化する所までをご紹介します。

1. Excel 2016 にて、[データ] - [新しいクエリ] - [Azure から] - [Microsoft Azure テーブル ストレージから] と選択します。
(Excel 2013 の場合は [POWER QUERY] - [その他のソースから] - [Windows Azure テーブル ストレージから] と選択します。)

Table1

 

2. 続いて、ストレージ アカウントとアカウント キーを入力して接続します。

Table2 Table3

 

3. 正常に接続できた場合にはプレビュー画面が表示されますので、Windows の場合は WADPerformanceCountersTabke を、
Linux の場合は Linux~ から始まるテーブルを選択し、[編集] を選択します。
(下図で Ver2v0 となっている通り、Agent のバージョンによっては、テーブル名が異なる場合があります)

Table4

 

4. クエリ エディターが表示されますので、Content 列を展開してすべての列を表示します。

Table5

 

5. 任意の列で項目をフィルターします。(下図では TimeStamp 列で前日分のみにフィルターしています)
フィルターを設定したら、[閉じて読み込む] を選択して実際にデータを読み込みます。

Table6

 

6. クエリ エディターでフィルターした条件に合致するデータのみが表示されます。(先の例でいうと前日分のデータだけ)

Table7

 

7. あとは、CounterName でパフォーマンス カウンターを絞るなどして、通常の Excel 画面上でグラフ化をするなり、
ピボット テーブルにして整理するなり、お好みでどうぞ。

Table8

 

いかがでしたでしょうか。

ログが膨大になって、読み込みに時間がかかるときは、是非フィルターを活用して頂ければと思います。
それでは。

 

本情報の内容(添付文書、リンク先などを含む)は、作成日時点でのものであり、予告なく変更される場合があります。