メインコンテンツまでスキップ
Sumo Logic Japanese

Azure Monitor からメトリクスを収集する

使用可能なメトリクスを Azure Monitor から Sumo Logic に転送するためのパイプラインを設定する手順。

このページでは、使用可能なメトリクスを Azure Monitor から Event Hub に、Azure 関数に、そして最終的に Sumo Logic の Hosted Collector 上にある HTTP Source に転送するためのパイプラインを設定する手順を紹介します。Azure Monitor はログだけでなくメトリクスも収集します。下記のパイプラインは、ログではなくメトリクスを収集するためのものです。 

Azure メトリクスについては、Azure ヘルプの「Overview of metrics in Microsoft Azure (Azure Monitor によって収集されるメトリクス)」を参照してください。

ソリューションの適合性は次のとおりです。

  • Azure Monitor はほとんどの Microsoft Azure サービスのメトリクスを収集し、データを Azure イベント ハブにストリーミングします。 
  • Azure Event Hubs はデータ ストリーミング プラットフォームおよびイベント取り込みサービスです。このパイプラインでは、イベント ハブは Azure Monitor によって収集されたメトリクスを Sumo 提供の Azure 関数にストリーミングします。 
  • Azure 関数は、メトリクスを Sumo HTTP Source に、関数ログを 1 つのストレージ アカウントに、フェイルオーバー データをもう 1 つのストレージ アカウントに送信するためにイベント ハブによってトリガされる小規模なコードです。

ソリューション ストラテジの詳細については、「Azure のモニタリング」を参照してください。 

Azure-metrics.png

メトリクスの収集を設定する

このセクションでは、Azure Monitor からのメトリクスの収集を設定する手順を紹介します。

ステップ 1.HTTP Source を設定する

このステップでは、Azure 関数からログを受信するための HTTP Source を設定します。

  1. HTTP Source を設定する Hosted Collector を選択します。必要に応じて、「Hosted Collector を設定する」の説明に従って Hosted Collector を新規作成します。
  2. 「HTTP ログとメトリクス Source」の説明に従って HTTP Source を設定します。 

ステップ 2.ARM テンプレートを使用して Azure リソースを設定する

このステップでは、Sumo 提供の Azure Resource Manager (ARM) テンプレートを使用して、Event Hub、Azure 関数、2 つのストレージ アカウントを作成します。Azure 関数は Event Hub によってトリガされます。2 つのストレージ アカウントは、Azure 関数からのログ メッセージと Event Hub からのフェイルオーバー データを保存するために使用されます。 

  1. azuredeploy_metrics.json ARM テンプレートをダウンロードします。
  2. Azure ポータルの [Template deployment (テンプレートのデプロイ)] にアクセスします。
    after step2.3.png
  3. [Create (作成)] をクリックします。
  4. [Custom deployment (カスタム デプロイ)] ブレードで、[Build your own template in the editor (エディタで独自のテンプレートを作成)] をクリックします。
  5. azuredeploy_metrics.json の内容をコピーして、エディタ ウィンドウに貼り付け、[Save (保存)] をクリックします。
    edit-template.png
  6. [Custom deployment (カスタム デプロイ)] ブレードに戻ります。 
    1. リソース グループを新規作成する (推奨) か、既存のリソース グループを選択します。
    2. [Location (ロケーション)] を選択します。
    3. [Sumo Endpoint URL (Sumo エンドポイント URL)] で、ステップ 1 で定義した HTTP Source の URL を入力します。 
    4. 利用規約に同意します。
    5. [Purchase (購入)] をクリックします。
      purchase.png
  7. Azure ポータルの右上にある [Notifications (通知)] でデプロイに成功したことを確認します。
    go-to-resource-group.png
  8. (省略可能) 同じウィンドウで、[Go to resource group (リソース グループに移動)] をクリックすれば、すべてのリソースが正常に作成されたことを確認できます。次のような画面が表示されます。
    created-resources.png
  9.  [Storage accounts (ストレージ アカウント)] に移動して「sumometfail」を検索します。[sumometfail<random-string>] をクリックします。
    storage-accounts.png
  10. [Blob Service] で、[Containers (コンテナ)] をクリックしてから [+ Container (+ コンテナ)] をクリックし、名前「sumomet-failover」を入力して、[Public Access Level (パブリック アクセス レベル)] に [Private (プライベート)] を選択します。[OK] をクリックします。
    add-container.png

ステップ 3.特定のリソースのメトリクスを Event Hub にエクスポートする

次の手順に従って、リソースのメトリクスを Event Hub にエクスポートします。

  1. 左側のペインで、[ALL Services (すべてのサービス)] をクリックします。

  2. 「Monitor (モニタ)」を検索して選択します。
    step2.png

  3. [Monitor (モニタ)] ペインで、[Settings (設定)][Diagnostic Settings (診断設定)] を選択します。
    step3.png

  4. メトリクスをエクスポートするリソースを選択します。診断を有効にしていない場合は、[Turn on Diagnostics Settings (診断設定の有効化)] をクリックします。
    step5.png

  5. 診断を有効にしたら、[Add a diagnostic setting (診断設定の追加)] をクリックします。
    add-diagnostic-setting.png

  6. [Diagnostic Settings (診断設定)] ページが表示されます。
    diagnostic-settings.png

    1. 左側のペインで
      • 診断設定の名前を入力します。
      • [Stream to an event hub (イベント ハブにストリーミング)] チェックボックスをクリックします。
      • [Configure event hub (イベント ハブの設定)] を選択します。右側のペインが表示されます。
    2. 右側のペインで
      • [Subscription (サブスクリプション)] を選択します。
      • イベント ハブ名前空間として SumoMetricsNamespace<UniqueSuffix> を選択します。
      • イベント ハブ名として insights-metrics-pt1m を選択します。
      • イベント ハブ ポリシー名を選択します。デフォルトのポリシー RootManageSharedAccessKey を使用できます。
    3. [OK] をクリックします。
    4. [Diagnostics Setting (診断設定)] を保存します。

メトリクスの収集をトラブルシューティングする

メトリクスが Sumo Logic に取り込まれない場合、以下の手順に従って問題を調査してください。

設定を確認する

最初に、上で作成したリソースが正常に作成されていることを確認します。

  1. [Resource groups (リソース グループ)] に移動し、「ステップ 2. ARM テンプレートを使用して Azure リソースを設定する」で作成または選択したリソース グループを選択します。作成した 5 つのリソース (App Service プラン、App Service、Event Hubs 名前空間、2 つのストレージ アカウント) が表示されます。 
    step2.11.png
  2. Azure ポータルの左側のペインで、[AppServices] をクリックして「SumoAzureApp」を検索します。「SumoAzureApp<random-string>」 Function App が見つかります。これをクリックします。 
  3. [Function Apps] ブレードで、[Integrate (取り込み)] をクリックします。[Triggers (トリガ)] フィールドの値が「Azure Event Hubs」、[Outputs (出力)] フィールドの値が「Azure Blob Storage」であることを確認します。 
    triggers.png
  4. 同じウィンドウで、[function app settings (Function App 設定)] リンクをクリックします。[SumoAuditEndpoint] フィールドの値が HTTP Source URL に一致することを確認します。 
    application-settings.png

Event Hub がメトリクスを受信していることを確認する

イベントがイベント ハブに表示されることを確認するには、次の手順を実行します。

  1. Azure ポータルのイベント ハブにアクセスします。
  2. [Messages (メッセージ)] リンクをクリックします。
  3. メッセージのサマリー情報がグラフの下に表示されます。[Incoming Messages (受信メッセージ)] の数が 0 より大きいことを確認します。
    event-hub-messages.png

関数を手動で実行する

以下の手順を実行して、Azure 関数がメッセージを Sumo に送信していることを確認します。

  1. [Function (関数)] ブレードで [EventHubs_Logs] をクリックします。
  2. サンプル ペイロード[Request Body (リクエスト本文)] ウィンドウにコピー & ペーストします。 
  3. [Run (実行)] をクリックします。これにより、テスト ペイロードが設定した HTTP Source の URL に送信されます。
  4. 出力を確認し、「Successfully sent to Sumo (正常に Sumo に送信されました)」ログ メッセージが表示されることを確認します。
    2018-04-17T20:30:09.681 [Info] Successfully sent to Sumo
    2018-04-17T20:30:09.681 [Info] Sent all data to Sumo. Exit now.
    2018-04-17T20:30:09.681 [Info] Function completed (Success, Id=b6ee4119-dd3e-4ba6-9cbd-484a57f822a0, Duration=90ms)
  5. Sumo で [Live Tail] タブを開き、イベントを受信することを確認します。たとえば、次のようなメトリクスを受信する HTTP Source に割り当てた Source Category で検索を行います。
    _sourceCategory="azure/ad"
    livetail.png
  • この記事は役に立ちましたか?