Azure Logic Apps のしくみ

完了

Azure Logic Apps の基礎を学んだので、次はサービスがバックグラウンドでどのように動作するかを見てみましょう。 この情報は、Azure Logic Apps をカスタマイズせずに使用できるかどうかを判断する際に役に立ちます。 これにより、カスタム コンポーネントを作成する必要があるシナリオで、その難易度を判断できます。

コネクタとは

"コネクタ" は、"操作" の形式でサービスまたはシステムへのインターフェイスを提供するコンポーネントです。 たとえば、Bing 検索コネクタを使うと新しい記事を取得でき、Office 365 Outlook コネクタを使うとメール、予定表、連絡先を管理できます。 Azure Logic Apps では、ワークフローの作成に使用できる 1,000 個以上の事前構築済みコネクタが用意されています。

コネクタは、サービスの REST または SOAP API を使用して実際の作業を実行します。 ロジック アプリ ワークフローでコネクタを使用すると、サービスの基になる API がコネクタによって自動的に呼び出されます。 そのため、コネクタは基本的に API のラッパーです。

次の図は、Bing 検索コネクタと Bing 検索 REST API の関係を示しています。

図は、Bing 検索 API のメソッドを呼び出している Bing 検索コネクタを示しています。

ヒント

Microsoft Copilot がインストールされている場合は、Copilot に次の質問をすることができます。

  • Azure Logic Apps ではどのコネクタが一般的に使用されていますか?
  • Azure Logic Apps にはいくつのコネクタが存在しますか?

カスタム コネクタ

カスタム コネクタを記述して、事前構築済みのコネクタがないサービスにアクセスすることができます。 これらのサービスには REST または SOAP API が必要です。コネクタは API の単なるラッパーであるため、これは驚くことではありません。

カスタム コネクタを作成するには、まず、API の OpenAPI の記述を生成します。 次に、その API の記述を使って、Azure portal でカスタム コネクタ リソースを作成します。 コネクタには、名前、アイコン、および各操作の説明を付けることができます。 次の図はプロセスの例を示していますが、コーディングは関連しないことに注目してください。

ダイアグラムは、REST API があるサービスのカスタム コネクタを作成する手順を示しています。

独自のロジック アプリ ワークフローでカスタム コネクタを使用し、組織内の他のユーザーと共有できます。 認定を受けるために Microsoft にコネクタを提出することもできます。 コネクタが認定されると、すべてのユーザーが使用できるコネクタ ギャラリーに表示されます。

トリガーとアクションとは

ワークフローは、さまざまな種類のタスクから構築されます。 たとえば、業界ニュース監視シナリオでは、新しい記事が公開されるとワークフローが開始されます。 その後、ワークフローによってセンチメントが分析され、センチメント スコアに基づいて決定が行われます。 Azure Logic Apps では、用語 "トリガー"、"アクション"、"コントロール アクション" を使用して、これらの概念を表します。 これらの操作は、Azure Logic Apps のワークフローの構成要素です。 次の図は、ニュース監視アプリでそれぞれの操作がどのように使用されているかを示しています。

図は、業界ニュース監視プロセスのフローチャートを示しています。各ステップには、トリガー、アクション、またはコントロール アクションのラベルが付いています。

トリガーとアクションの定義についてさらに詳しく見てみましょう。

  • "トリガー" は、特定の条件が満たされたときに発生するイベントです。 条件が満たされると、トリガーによって自動的にアクティブ化 (つまり "起動") されます。 たとえば、タイマーが期限切れなったときや、データが利用可能になったときなどです。

  • アクションは、ワークフロー内の特定のタスクを実行する操作です。 アクションは、トリガーによってアクティブ化された後、または別のアクションが完了した後に実行されます。

"コネクタ" は、関連するすべてのトリガーとアクションを含むグループであり、通常は 1 つのサービス、システム、またはその他のグループに関連付けられます。 いくつか例を見てみましょう。

Bing 検索コネクタを使用すると、ロジック アプリ ワークフローと Bing 検索サービスを連携させることができます。 業界ニュース監視アプリは、Bing 検索コネクタからのトリガーを使用して、新しい関連記事が発行されたかどうかを判断できます。 次の図は、Bing 検索コネクタとそのトリガーおよびアクションを示しています。

図は、新しい記事をチェックし、記事を一覧表示できるトリガーが含まれる Bing 検索コネクタを示しています。

次は Dropbox コネクタです。 少人数のプロジェクト チームで作業を行い、その共有データを Dropbox に保存しているとします。 誰かがいずれかのファイルを変更したことを検出して、他のチーム メンバーに通知を送信するワークフローを構築できます。 次の図は、Dropbox コネクタとそのトリガーおよびアクションを示しています。

ファイルが作成されたときや変更されたときに通知するトリガーと、ファイルを管理するアクションがある Dropbox コネクタを示す図。

最後に、Twilio コネクタを見てみましょう。 ほとんどのコネクタではトリガーとアクションの両方が提供されますが、このコネクタにはアクションしかありません。 Twilio コネクタを使用すると、通知用のテキスト メッセージを送信できます。 たとえば、Dropbox のシナリオで Twiliio コネクタを使用して、共有ファイルが変更されたときにチーム メンバーにメッセージを送信できます。 次のダイアグラムは、Twilio コネクタとそのアクションを示しています。

テキスト メッセージを送信および取得するアクションを備えているが、トリガーはない Twilio コネクタを示す図。

ワークフローをトリガーとアクションから構築する方法

ワークフローを構築するには、操作 (具体的にはトリガーとアクション) を選択します。 ワークフローは、トリガーから始める必要があります。 トリガーの後に、ワークフローを実装するために必要な数のアクションを続けることができます。 次の図は、業界ニュース監視アプリで使用するトリガーとアクションを示しています。

図は、業界ニュース監視アプリのトリガーとアクションを示しています。操作ごとに、関連付けられている外部サービスが示されています。

トリガーとアクションの連携のしくみ

トリガーとアクションは、基本的に、基になる API 操作の呼び出しです。 各操作に入力と出力があります。 たとえば、新しいニュース記事という名前の Bing 検索トリガーは、検索文字列を受け取り、その文字列を含む記事を返します。 センチメント アクションという名前の Cognitive Services アクションは、入力として文字列を受け取り、センチメント スコアを浮動小数点数で返します。 次の図は、これら 2 つの操作を示しています。

図は、

Azure Logic Apps により、ワークフローの後続のすべての操作で戻り値を自動的に使用できるようになります。 この機能により、ある操作の結果を次の操作への入力として渡すことができます。 次の図は、業界ニュース監視アプリの最初の 2 つの操作のデータ フローを示しています。

ダイアグラムは、先行するすべての操作の結果をそれ以降のすべてのワークフロー手順でどのように使用できるかを示しています。

コントロール アクションとは

ほとんどのワークフローでは、処理される必要があるデータに基づいて異なるアクションを実行する必要があります。 たとえば、ワークフローで、経費報告書を金額に応じて異なる管理者にルーティングするとします。 業界ニュース監視アプリでは、記事のセンチメント スコアに基づいてワークフローを分岐させる必要があります。 次の図は、業界ニュース監視アプリのフローチャートを示しており、コントロール ロジックが強調表示されています。

図は、業界ニュース監視アプリの記事センチメントに基づく分岐を示しています。

"コントロール アクション" は Azure Logic Apps に組み込まれた特別なアクションであり、ワークフロー コントロール コンストラクトを提供します。この例は次のとおりです。

  • ブール式によって制御される "条件" アクション。
  • ケースと既定のケースによって制御される "スイッチ" アクション。
  • アクションを繰り返し、ブール式によって制御される "Until" アクションと "For each" ループ アクション。
  • 条件なしの並列分岐指示。

次のダイアグラムは、業界ニュース監視アプリのワークフローで条件アクションを使用する方法を示しています。

図は、記事のセンチメントに基づいて分岐を選択する組み込みのコントロール アクションがある業界ニュース監視ワークフローを示しています。

ワークフロー デザイナーとは

ワークフロー デザイナーは、ワークフローを作成するためのグラフィカル ツールです。 デザイナーにはキャンバス画面があり、そこでトリガーとアクションを追加してワークフローを構築できます。 たとえば、業界ニュース監視アプリでは、新しいニュース記事というトリガー、条件というコントロール アクション、センチメントBLOB の作成メールの送信という名前のアクションが使用されます。 次のスクリーンショットは、デザイナー内の業界ニュース監視ワークフローを示しています。

スクリーンショットは、ワークフロー デザイナー内の業界ニュース監視アプリを示しています。