Azure Logic Apps のしくみ

完了

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

コネクタとは

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

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

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

Bing Search API の Bing Search コネクタ呼び出しメソッドを示す図。

ヒント

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 Search コネクタを使用すると、ロジック アプリ ワークフローが Bing Search サービスと対話できます。 業界ニュース監視アプリでは、 Bing Search コネクタからのトリガーを使用して、新しい関連記事が使用可能なタイミングを判断できます。 次の図は、 Bing Search コネクタとそのトリガーとアクションを示しています。

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

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

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

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

図は、テキスト メッセージを送受信するアクションを含む Twilio コネクタを示していますが、トリガーはありません。

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

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

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

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

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

図は、新しいアーティクルが発行されたときという名前のトリガーと、Sentiment という名前のアクションの入力と出力を示しています。

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

図は、上記のすべての操作の結果を、それ以降のすべてのワークフロー ステップで使用できるようにする方法を示しています。

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

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

図は、業界ニュース監視アプリでの記事の感情に基づく分岐を示しています。

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

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

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

図は、記事のセンチメントに基づいてブランチを選択する組み込みの制御アクションを含む業界ニュース監視ワークフローを示しています。

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

ワークフロー デザイナーは、ワークフローを作成するためのグラフィカル ツールです。 デザイナーにはキャンバス画面があり、そこでトリガーとアクションを追加してワークフローを構築できます。 たとえば、業界ニュース監視アプリでは、On new news article という名前のトリガー、条件と呼ばれる制御アクション、Sentiment、Create BLOBSend an email という名前のアクションが使用されます。 次のスクリーンショットは、デザイナー内の業界ニュース監視ワークフローを示しています。

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