Microsoft Power Automate 用の Azure Data Explorer コネクタ
重要
このコネクタは、Microsoft Fabric のリアルタイム インテリジェンスで使用できます。 次の例外を除き、この記事の手順を使用してください。
- 必要に応じて、「KQL データベースを作成する」の手順に従ってデータベースを作成する。
- 必要に応じて、「空のテーブルを作成する」の手順に従ってテーブルを作成する。
- 「URI をコピーする」の手順に従って、クエリまたはインジェスト URI を取得する。
- KQL クエリセットでクエリを実行する。
Power Automate (以前の Microsoft Flow) 用の Azure Data Explorer コネクタを使用すると、フローの調整とスケジュール設定や、通知とアラートの送信を、スケジュール設定されたタスクまたはトリガーされたタスクの一部として実行できます。
次のことを実行できます。
- クエリ結果 (しきい値が特定の制限を超えた場合など) に基づいて通知とアラートを送信する。
- テーブルやグラフが含まれるレポートを定期的 (毎日または毎週など) に送信する。
- クラスター上で管理コマンドを使用して、定期ジョブをスケジュール設定する。 たとえば、
.set-or-append
コマンドを使用して、あるテーブルから別のテーブルにデータをコピーします。 - Azure Data Explorer と他のデータベースの間でデータをエクスポートおよびインポートする。
詳細については、Azure Data Explorer Power Automate コネクタの使用例に関するページをご覧ください。
Note
Power Automate コネクタがネットワークで保護されたクラスターにアクセスするには、コネクタのリージョンに関連付けられた送信 IP アドレスをファイアウォールの許可リストに追加する必要があります。 詳細については、「Azure Data Explorer クラスターへのパブリック アクセスを管理する」を参照してください。
Azure Data Explorer コネクタを使用して新しいフローを作成する
このコネクタを使用するには、最初にトリガーを追加する必要があります。 トリガーは、一定の期間に基づいて定義することも、直前のフロー アクションへの応答として定義することも可能です。
Power Automate にサインインします。
新しいフローを作成するか、Power Automate ホーム ページで [マイ フロー]>[+ 新規フロー] の順に選択します。
[Scheduled cloud flow](スケジュールされたクラウド フロー) を選択します。
[Scheduled cloud flow](スケジュールされたクラウド フロー) に、必要な情報を入力します。
[作成]>[新しいステップ] の順に選択します。
検索ボックスに「Kusto」または「Azure Data Explorer」と入力し、[Azure Data Explorer] を選択します。
一覧からアクションを選択します。 各アクションとその構成方法の詳細については、「フロー アクション」を参照してください。
重要
フローを実行するには、有効な Azure Data Explorer の接続が必要です。 接続の作成については、「Power Automate で Azure Data Explorer 接続を作成する」を参照してください。
フロー アクション
Azure Data Explorer コネクタを選択する際に、次のいずれかのアクションを選択してフローに追加できます。
このセクションでは、アクションごとに機能とパラメーターについて説明し、任意のフローにメールのアクションを追加する方法を示す例を挙げます。
KQL クエリを実行
Note
クエリがドットで始まる場合、それは管理コマンドです。 [async 管理コマンドの実行] を使用してください。
このアクションを使用して、指定したクラスターに対してクエリを実行します。 この後に追加されるアクションは、クエリの結果の各行を反復処理します。
クエリの実行に 8 分以上かかる場合は、"RequestTimeout" 例外で失敗します。 この問題を回避するには、クエリを最適化するか、より小さなパーツに分割します。 詳細については、「クエリのベスト プラクティス」を参照してください。
例
次のフローでは、1 分ごとにクエリがトリガーされます。 このクエリでは、テーブル内のレコード数を検査し、レコード数が 0 よりも大きい場合に限ってメールを送信します。
KQL クエリを実行してグラフを表示する
Note
クエリがドットで始まる場合、それは管理コマンドです。 [管理コマンドの実行とグラフのレンダリング] を使用してください。
このアクションを使用して、KQL クエリの結果をテーブルまたはグラフとして視覚化します。 たとえば、このフローを使用して、日次レポートをメールで受信します。
クエリの実行に 8 分以上かかる場合は、"RequestTimeout" 例外で失敗します。 この問題を回避するには、クエリを最適化するか、より小さなパーツに分割します。 詳細については、「クエリのベスト プラクティス」を参照してください。
例
次のフローでは、クエリ結果が時間グラフとして表示されます。
async 管理コマンドの実行
このアクションを使用して管理コマンドを非同期的に実行します。つまり、バックグラウンドで実行を継続します。 このアクションは、ID、状態、およびステータスを返します。 async コマンドの状態と詳細を確認するには、このアクションで返された ID を指定して .show operations コマンドを使用します。
async 管理コマンドの実行に 60 分以上かかる場合は、"RequestTimeout" 例外で失敗します。
例
次のフローでは、async コマンドをトリガーして、'TransformedSysLogs' テーブルから 'TargetTable' に 10 件のレコードをコピーします。 クエリには 'async' キーワードが必要であることに注意してください。
管理コマンドの実行とグラフのレンダリング
このアクションを使用して管理コマンドを実行し、結果をグラフとして表示します。 グラフ オプションには、HTML テーブル、円グラフ、時間グラフ、横棒グラフが含まれます。
管理コマンドの実行に 8 分以上かかる場合は、"RequestTimeout" 例外で失敗します。
show 管理コマンドの実行
このアクションは、show 管理コマンドを実行し、後続のコネクタで使用できる結果を返します。
管理コマンドの実行に 8 分以上かかる場合は、"RequestTimeout" 例外で失敗します。
例
次のフローでは、.show operation コマンドを実行し、async コマンドの実行時に返される操作 ID を使用して async コマンドの状態を検索します。
Kusto クエリの結果をメールで送信する
任意のフローにステップを含めて、レポートを、任意のメールアドレスにメールで送信できます。
- 新しいステップをフローに追加するには、[+ 新規のステップ] を選択します。
- 検索ボックスに「Office 365」と入力し、[Office 365 Outlook] を選択します。
- メールの送信 (V2) を選択します。
- レポートの送信先のメール アドレスを入力します。
- メールの件名を入力します。
- [コード ビュー]. を選択します。
- [ 本文] フィールドにカーソルをあわせ、[動的コンテンツの追加] を選択します。
- BodyHtmlを選択します。
- [詳細オプションの表示] を選択します。
- [Attachments Name -1]\(添付ファイル名 - 1\) で、[Attachment Name]\(添付ファイル名\) を選択します。
- [Attachments Content]\(添付ファイルのコンテンツ\) で、[Attachment Content]\(添付ファイルのコンテンツ\) を選択します。
- 必要に応じて、添付をさらに追加します。
- 必要に応じて、重要度レベルを設定します。
- [保存] を選択します。
Azure Data Explorer 接続の作成
Azure Data Explorer コネクタが含まれるフローを実行するには、有効な Azure Data Explorer 接続を使用する必要があります。 Power Automate の左側のウィンドウから [データ]>[接続] を選択するか、フロー内から Azure Data Explorer コネクタのメニュー >[新しい接続の追加] を選択すると、新しい接続を作成して認証できます。
次のステップでは、フロー内から接続を作成する方法を示します。
[KQL クエリの実行] で、Power Automate コネクタの右上の 3 つのドットを選択します。
[新しい接続の追加] を選択します。 初めて接続するときに、サインインして接続を認証するよう求めるプロンプトが表示されます。
認証
ユーザー資格情報または Microsoft Entra アプリケーションを使用して認証を行うことができます。 資格情報を使用して認証を行うには、[サインイン] を選択し、資格情報を入力します。
サービス プリンシパルを使用して認証を行うには、次のようにします。
[サービス プリンシパルを使用して接続する] を選択します。
フォームに次の情報を入力します。
- 接続名: 一見して意味の伝わる、新しい接続の名前。 この例では、"MyApplication" を使用しました。
- クライアント ID: ご自身のアプリケーション ID。
- クライアント シークレット: ご自身のアプリケーション キー。
- テナント:アプリケーションを作成した Microsoft Entra ディレクトリの ID。
Note
アプリケーションが Microsoft Entra アプリケーションであり、クラスターでクエリを実行する権限が与えられていることを確認します。
認証が完了したら、新しい接続がフローで使用されていることを確認してください。
接続が設定されると、アプリケーションの資格情報を使用してフローが実行されます。
フローをテストする
フローが動作しているかを検査するには、次のようにフローの実行履歴を検査してください。
Power Automate ホーム ページに移動します。
メインメニューから、[マイ フロー] を選択します。
調べたいフローの行で [その他のコマンド] アイコンを選択し、[実行履歴] を選択します。
実行されたすべてのフローの開始時刻、期間、および状態に関する情報が一覧表示されます。
フローの詳細については、マイ フローで、調べたいフローを選択します。
実行が失敗した理由を確認するには、[実行の開始時刻] を選択します。 フローが表示され、失敗したフローのステップが赤色の感嘆符で示されます。 失敗したステップを展開し、詳細を表示します。 右側の [詳細] ウィンドウにはエラー情報が示されています。この情報に基づいてトラブルシューティングを行うことができます。
制限事項
- 要求あたりの最大レコード数は 50,000 で、要求あたりの最大データ サイズは 32 MB です。 これらの制限は変更できません。
- 同期要求のタイムアウトは 8 分です。
- 非同期要求のタイムアウトは 60 分です。
- コネクタは、
getschema
演算子でサポートされていない演算子をサポートしていません。 たとえば、fork、facet、evaluate の各演算子はサポートされていません。 - Microsoft Edge または Google Chrome でのフローの動作をお勧めします。
関連するコンテンツ
- Azure Kusto Logic App コネクタを使用して、スケジュール設定されたまたはトリガーされたタスクの一部として Kusto クエリとコマンドを実行します。