troushoo

Microsoft Azure Diagnostics with ELK : Azure Diagnostics をグラフ化



Azure Diagnostics のデータをグラフ化する事を可能にするELK(Elastic Search, Logstash, Kibana)クラスタを、Azure 上に作成するためのPowerShell Script がMicrosoft より2015/4/29 に公開されました。
以下、そのPowerShell スクリプトの使用方法を紹介します。

事前準備
1. ELK クラスタを作成するPowerShell スクリプトをダウンロードします。
GitHub の公開イトの「Download ZIP」からPowerShell スクリプトをダウンロードできます。


2. Visual Studio 2013 をインストールします。

3. Visaul Studio 2013 用のAzure SDK をインストールします。
Microsoft のサイトの「SDK」の「VS 2013 のインストール」よりインストール可能です。


4. Microsoft Azure PowerShell をインストールします。
Microsoft のサイトの「Windows PowerShell」の「インストール」よりインストール可能です。


インストールが完了したかどうかは「Microsoft Azure PowerShell」を起動後「Get-Module」を実行し、Azure のモジュールが表示されているかを確認できます。

もし、Azure のモジュールが表示されていない場合は、再起動が必要です。

5. msysgit をインストールします。
msysgit には、PowerShell スクリプトから呼び出されるモジュールが含まれています。
GitHub のサイトの「msysGit-netinstall-1.9.5-preview20150319.exe」よりインストール可能です。
筆者の環境では、インストールに1時間15分ほど時間がかかりました。


[補足]インストールの最後に「Your build failed… Please fix it,」と一見エラーがあるようにも表示されましたが、PowerShell を使う分には特に問題ありませんでした。


PowerShell 実行のための準備
1. 管理者権限で「Microsoft Azure PowerShell」を起動します。

2. PowerShell の実行ポリシーを変更するために以下のコマンドを実行します。

Set-ExecutionPolicy bypass -Scope Process


3. スクリプト中で使用するexe のモジュールが実行できるように以下のコマンドを実行し、パスを追加します。
$ENV:PATH="$ENV:PATH;C:\msysgit\bin;C:\msysgit\mingw\bin;"


4. スクリプト中で使用するopnessl の設定ファイルのための環境変数を設定します。
$ENV:OPENSSL_CONF ="C:\msysgit\ssl\openssl.cnf"


5. PowerShell で使用するAzure のアカウントを追加します。
以下のコマンドを実行すると、ユーザー名・パスワードを聞かれるので、Azure のアカウント情報を入力してください。
Add-AzureAccount


6. 複数サブスクリプションを持っている場合は、以下のコマンドを実行し、サブスクリプションを選択してください。
Select-AzureSubscription -subscriptionName <サブスクリプション名>


サブスクリプション一覧は以下のコマンドで確認できます。
Get-AzureSubscription

7. ダウンロードしたPowerShell スクリプトの「semantic-logging-3\semantic-logging-3\ELK」に移動します。
cd C:\Data\semantic-logging-3\semantic-logging-3\ELK



ELK クラスタを作成するPowerShell スクリプトの実行
1. New-SampleLogstashConfigWithStorage.ps1 を実行します。
.\New-SampleLogstashConfigWithStorage.ps1 -StorageAccountName "<ストレージアカウント名>" -TableName "<テーブル名>"


<ストレージアカウント名> にはストレージアカウント名を、<テーブル名>には、Azure Diagnostics が格納されているテーブル名を指定します。
これにより、logstash が「テーブル名」からデータを取得するために使用する設定ファイル「logstash.conf」を作成します。
この作成された設定ファイルは、logstash が実行された後のデータのみを取得することとなります。

2. ELK クラスタを作成するため、New-SampleELKInstance.ps1 を実行します。
.\New-SampleELKInstance.ps1 –Location “<場所>" -Username "<ユーザー名>" -Password "<パスワード>" -LogstashConfig "logstash.conf" -UseKibana4


PowerShell が終了するまで、およそ10分から20分程度かかります。終了すると、Azure Diagnostics をグラフ化するKibana のURL が表示されます。

Kibana でAzure Diagnostics をグラフ化
1. 上記の「2. スクリプトの終了を待ちます。」で表示された、Azure Diagnostics をグラフ化するKibana のURL に移動します。

2. 「Time-field name」は「Timestamp」を選び、「Create」 をクリックしました。


3. 「Discover」タブをクリックすると、データが確認できます。
238-16

4. 「Visualize」タブでは、グラフ化することも可能です。


情報元
Microsoft Azure Diagnostics with ELK (英語)


  1. 2015/05/11(月) 22:11:29|
  2. Azure
  3. | トラックバック:0
  4. | コメント:0
<<Docker コンテナにASP.NET 5 アプリをVisual Studio からデプロイ | ホーム | Vorlon.JS : build 2015 でMicrosoft より発表された、JavaScript のデバッグ・テストツール>>

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック

トラックバック URL
http://troushoo.blog.fc2.com/tb.php/238-4b97b736
この記事にトラックバックする(FC2ブログユーザー)

スポンサーリンク

最新記事

月別アーカイブ

カテゴリ

ツール (92)
ネットワーク (76)
Visual Studio (56)
SOS・Psscor2/Psscor4 (25)
WinDbg (25)
Linux (22)
Azure (17)
Tips (20)
英語 (1)
About Me (1)
未分類 (0)

全記事表示リンク

全ての記事を表示する

検索フォーム

RSSリンクの表示

リンク

このブログをリンクに追加する