Azure Logic Apps 内のワークフローから Log Analytics または Application Insights に接続する

適用対象: Azure Logic Apps (従量課金プラン + Standard)

Note

Azure Monitor Logs コネクタは、Azure Log Analytics コネクタおよび Azure Application Insights コネクタに置き換わるものです。 このコネクタは、他のコネクタと同じ機能を提供し、Log Analytics ワークスペースまたは Application Insights リソースに対してクエリを実行する場合に推奨される方法です。 たとえば、ご使用の Application Insights リソースに接続する際に、アプリケーション ID と API キーを作成または指定する必要はありません。 認証は Microsoft Entra ID と統合されています。

Azure Monitor 内の Log Analytics ワークスペースまたは Application Insights リソースからデータを取得するワークフローを Azure Logic Apps 内に構築するには、Azure Monitor ログ コネクタを使用することができます。

たとえば、ご使用の Office 365 Outlook アカウントから Azure Monitor ログ データをメール メッセージ内に送信するロジック アプリ ワークフローを作成したり、Azure DevOps 内でバグを作成したり、または Slack メッセージを投稿したりすることができます。 このコネクタにはアクションのみが用意されているため、ワークフローを開始するには、繰り返しトリガーを使用して単純なスケジュールを指定する、または別のサービスの任意のトリガーを使用することができます。

このガイドでは、Azure Monitor ログ クエリの結果をメールで送信するロジック アプリ ワークフローを構築する方法について説明します。

コネクタに関するテクニカル リファレンス

このコネクタの操作に関する技術情報については、コネクタのリファレンス ドキュメントをご参照ください。

次のアクションはどちらも、Log Analytics ワークスペースまたは Application Insights リソースに対して、ログ クエリを実行することができます。 その違いは、データが返されるその方法にあります。

アクション 説明
クエリを実行し、結果を一覧表示する 各行を個別のオブジェクトとして返します。 ワークフローの残りの部分で各行を個別に操作する場合は、このアクションを使用します。 このアクションの後には通常、For each アクションが続きます。
クエリを実行し、結果を視覚化する クエリ結果セットを示す JPG ファイルを返します。 このアクションを使うと、たとえば結果をメールで送信することにより、残りのワークフローで結果セットを使用できます。 このアクションは、クエリが結果を返す場合にのみ、JPG ファイルを返します。

制限事項

  • このコネクタには、使用するクエリおよびその結果のサイズに基づいて、ご使用のワークフローが達する場合がある次の制限があります。

    制限 メモ
    クエリ応答の最大サイズ 16.7 MB または 16 MiB このコネクタのインフラストラクチャで、このサイズ制限はクエリ API の制限より低く設定されています。
    レコードの最大数 500,000 レコード
    コネクタ タイムアウトの最大値 110 秒
    クエリ タイムアウトの最大値 100 秒

    これらの制限に達するのを回避するには、データを集計してその結果のサイズを小さくする、またはそのワークフローの繰り返しを調整して、より短い時間の範囲で、より頻繁に実行されるようにします。 ただし、キャッシュの関係上、間隔が 120 秒未満の頻繁なクエリは推奨されません。

  • [ログ] ページとコネクタでは、視覚化に異なるグラフ ライブラリが使用されます。 そのため、このコネクタには現在、一部の機能が含まれていません。

前提条件

Azure Monitor Logs アクションを追加する

  1. Azure portal で、Standard ロジック アプリのワークフローをデザイナーで開きます。

  2. Azure Monitor ログ アクションを追加するご使用のワークフロー内で、次の一般的手順に従い、Azure Monitor ログ アクションを追加します

    この例では、[Run query and visualize results] という名前のアクションを使用して続行します。

  3. 接続ボックスに、以下の情報を指定します:

    プロパティ 説明
    Connection Name 接続の名前
    認証の種類 接続に使用する認証の種類。 詳しくは、「送信呼び出しに認証を追加する」をご覧ください。
    テナント ID Microsoft Entra テナント。 : 現在の接続に関連付けられているアカウントは、後でメールを送信するために使用されます。
  4. 完了したら、選択した認証の種類に基づいて [サインイン] または [新規作成] を選択します。

  5. [Run query and visualize results] アクション ボックス内で、次の情報を指定します。

    プロパティ 必要 説明
    サブスクリプション はい <Azure-subscription> ご使用の Log Analytics ワークスペースまたは Application Insights アプリケーションの Azure サブスクリプション。
    リソース グループ はい <Azure-resource-group> ご使用の Log Analytics ワークスペースまたは Application Insights アプリケーションの Azure リソース グループ。
    リソースの種類 はい Log Analytics ワークスペースまたは Application Insights ご使用のワークフローから接続するリソースの種類。 この例では、[Log Analytics ワークスペース] を選択して続行します。
    リソース名 はい <Azure-resource-name> ご使用の Log Analytics ワークスペースまたは Application Insights リソースの名前。
  6. [クエリ] ボックス内に、次の Kusto クエリを入力して、指定したログ データを次のソースから取得します。

    Note

    独自のクエリを作成する場合は、ご使用の Azure Monitor ログ アクションにそれらを追加する前に、それらが Log Analytics 内で正しく機能することをご確認ください。

    • Log Analytics ワークスペース

      次のクエリ例では、過去 1 日間に発生したエラーを選択し、それらの合計数をレポートし、昇順で並べ替えます。

      Event
      | where EventLevelName == "Error" 
      | where TimeGenerated > ago(1day)
      | summarize TotalErrors=count() by Computer
      | sort by Computer asc
      
    • Application Insights リソース

      次のクエリ例では、過去 1 日間に失敗した要求を選択し、operation_Id 識別子に基づいて、その操作の一環として発生した例外と関連付けています。 その後、このクエリでは autocluster() アルゴリズムを使用して、結果をセグメント化します。

      requests
      | where timestamp > ago(1d)
      | where success == "False"
      | project name, operation_Id
      | join ( exceptions
          | project problemId, outerMessage, operation_Id
      ) on operation_Id
      | evaluate autocluster()
      
  7. [時間の範囲] で、[クエリに設定] を選択します。

    次の表では、[時間の範囲] のオプションについて説明します。

    時間範囲 説明
    [Exact] 開始時刻と終了時刻を動的に指定します。
    [相対] 過去 1 時間や過去 12 時間など、相対値を設定します。
    クエリに設定 TimeGenerated フィルターがクエリに含まれている場合に適用されます。
  8. [グラフの種類] で、[Html テーブル] を選択します。

  9. ワークフローを保存します。 デザイナーのツール バーで、 [保存] を選択します。

電子メール アクションを作成する

  1. Office 365 Outlook アクションを追加するご使用のワークフロー内で、次の一般的手順に従い、Send an email (V2) という名前の Office 365 Outlook アクションを追加します

  2. [宛先] ボックスに、受信者の電子メール アドレスを入力します。 この例では、自分自身のメール アドレスを使用します。

  3. [件名] ボックス内に、メールの件名を入力します (たとえば、「上位のエラーや失敗 (日次)」)。

  4. [本文] ボックスの内部をクリックし、[動的コンテンツ] オプション (稲妻アイコン) を選択します。それにより、ワークフローの前の手順からの出力を選択できます。

  5. 動的コンテンツ リストの [クエリを実行し、結果を視覚化する][本文] を選択します。これは、前に Log Analytics アクションに入力したクエリの結果を表します。

  6. [詳細パラメーター] 一覧から [添付ファイル] を選択します。

    これで メールの送信 アクションに、[添付ファイル名] プロパティと [添付ファイルコンテンツ] プロパティを含む [添付ファイル] セクションが含まれるようになりました。

  7. 追加されたプロパティについては、これらの手順に従います。

    1. [添付ファイル名] ボックスで、動的コンテンツ リストを開きます。 [クエリを実行し、結果を視覚化する][添付ファイル名] を選択します。

    2. [添付ファイル コンテンツ] ボックスで、動的コンテンツ リストを開きます。 [クエリを実行し、結果を視覚化する][添付ファイル コンテンツ] を選択します。

  8. ワークフローを保存します。 デザイナーのツール バーで、 [保存] を選択します。

ワークフローのテスト

  1. ワークフロー メニューで、[概要] を選択します。

  2. [概要] ツール バーで、[実行]>[実行] の順に選びます。

  3. このワークフローが完了したら、ご使用のメールを確認します。

    Note

    このワークフローは、クエリ結果セットを表示する JPG ファイルを含むメールを生成します。 ご使用のクエリで結果が何も返されない場合、このワークフローは JPG ファイルを作成しません。

    この Log Analytics ワークスペースの例の場合、受信するメールの本文は次の例のようになります。

    Screenshot shows data report from a Log Analytics workspace in an example email.

    Application Insights リソースの場合、受信するメールの本文は次の例のようになります。

    Screenshot shows data report from an Application Insights resource in an example email.

次のステップ