次の方法で共有


クイックスタート: Visual Studio Code を使用し、マルチテナント Azure Logic Apps で消費ワークフローを作成する方法

適用対象: Azure Logic Apps (従量課金)

多くの場合、統合開発者は、インフラストラクチャを管理せずに、SaaS アプリ、エンタープライズ システム、データ ソース全体のビジネス プロセスを自動化する必要があります。 また、定義のバージョン管理、更新、変更の確認を効率的に行えるように、ワークフローを構築するためのコード優先の方法も必要です。

このクイック スタートでは、Visual Studio Code でローカルのコード優先ツールを使用して、マルチテナント Azure Logic Apps で従量課金ワークフローを作成および管理する方法について説明します。 従量課金ワークフローは、イベント ドリブンワークフローとスケジュールされたワークフローのサーバーレス統合モデルを提供するため、実行するアクションに対してのみ料金を支払いながら、サービスを接続し、プロセスを自動化できます。

Visual Studio Code では、コード エディターを使用して JavaScript Object Notation (JSON) のワークフロー定義を編集したり、必要に応じてビジュアル デザイナーを使用したり、Azure でデプロイされたワークフローを管理したりできます。 また、Linux、Windows、macOS など、Visual Studio Code が実行されている任意の開発プラットフォームのワークフローと統合アカウントで作業することもできます。

次のスクリーンショットは、従量課金ワークフロー定義の例を示しています。

Visual Studio Code の従量課金ロジック アプリワークフロー定義の例を示すスクリーンショット。

詳細については、以下を参照してください:

前提条件

Visual Studio Code から Azure にアクセスする

  1. Visual Studio Code で、 Azure アカウントにサインインします

    サインインに通常よりも長い時間がかかる場合、Visual Studio Code はユーザーにデバイス コードを提供して、Microsoft 認証 Web サイトでサインインするよう求めます。 代わりにコードを使用してサインインするには、次の手順に従います。

    1. [ デバイス コードの使用] を選択し、[ コピーして開く] を選択します。

    2. [ リンクを開く ] を選択して新しいブラウザー ウィンドウを開き、認証 Web サイトに進みます。

    3. [アカウントにサインインする] ページで認証コードを入力し、 [次へ] を選択します。

  2. アクティビティ バーで、Azure アイコンを選択します。

    Visual Studio Code、アクティビティ バー、選択した Azure アイコンを示すスクリーンショット。

    Azure ペインの [Logic Apps (Consumption)] セクションと [Integration Accounts ] セクションに、アカウントに関連付けられている Azure サブスクリプションが表示されるようになりました。 予想されるサブスクリプションが表示されない場合、またはセクションに表示されるサブスクリプションが多すぎる場合は、次の手順に従います。

    1. [ Logic Apps (従量課金)] セクションで、[サブスクリプションの選択] を 選択します

      Azure のペイン、Logic Apps の従量課金セクション、および Azure サブスクリプションをフィルター処理するために選択されたサブスクリプションの選択を示すスクリーンショット。

    2. サブスクリプションの一覧から、使用するサブスクリプションを選択します。

  3. [ Logic Apps (従量課金)] セクションで、サブスクリプションを展開して、そのサブスクリプションにデプロイされたロジック アプリを表示します。

    関連付けられたロジック アプリを含む展開された Azure サブスクリプションを示すスクリーンショット。

ロジック アプリを作成する

  1. Visual Studio Code の [ Logic Apps (Consumption)] セクションで、サブスクリプションのショートカット メニューから [ ロジック アプリの作成] を選択します。

    サブスクリプションのショートカット メニューとロジック アプリの作成を示すスクリーンショット。

    一覧が表示され、サブスクリプション内の Azure リソース グループが表示されます。

  2. リソース グループの一覧から、[ 新しいリソース グループの作成 ] または [既存のリソース グループ] を選択します。

    この例では、[ 新しいリソース グループの作成] を選択します。次に例を示します。

    [新しいリソース グループの作成] が選択されているリソース グループの一覧を示すスクリーンショット。

  3. Azure リソース グループの名前を入力します。

    入力された新しい Azure リソース グループ名を示すスクリーンショット。

  4. ロジック アプリのメタデータを保存する Azure リージョンを選択します。

    選択した Azure リージョンを示すスクリーンショット。

  5. ロジック アプリの名前を入力します。

    ロジック アプリに入力された名前を示すスクリーンショット。

    Azure ウィンドウの Azure サブスクリプションの下に、新しいロジック アプリと空のワークフローが表示されます。 Visual Studio Code では、次に示すスケルトン ワークフロー定義を含む JSON (.logicapp.json) ファイルも開きます。

    JSON ファイル内の空のロジック アプリ ワークフロー定義のフレームワークを示すスクリーンショット。

    これで、この JSON ファイルでワークフロー定義の手動作成を開始できるようになりました。 ワークフロー定義の構造と構文に関するテクニカル リファレンスについては、「 Azure Logic Apps のワークフロー定義言語スキーマ」を参照してください。

    次のサンプル ロジック アプリ ワークフロー定義は、RSS トリガーと Office 365 Outlook アクションで始まります。 通常、JSON 要素は各セクション内でアルファベット順に表示されます。 ただし、このサンプルでは、これらの要素を、ワークフロー操作がデザイナーに表示される順序で大まかに示しています。

    {
       "$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#",
       "contentVersion": "1.0.0.0",
       "parameters": {
          "$connections": {
             "defaultValue": {},
             "type": "Object"
          }
       },
       "triggers": {
          "When_a_feed_item_is_published": {
             "recurrence": {
                "frequency": "Minute",
                "interval": 30
             },
             "splitOn": "@triggerBody()?['value']",
             "type": "ApiConnection",
             "inputs": {
                "host": {
                   "connection": {
                      "name": "@parameters('$connections')['rss']['connectionId']"
                   }
                },
                "method": "get",
                "path": "/OnNewFeed",
                "queries": {
                   "feedUrl": "@{encodeURIComponent('https://feeds.content.dowjones.io/public/rss/RSSMarketsMain')}",
                   "sinceProperty": "PublishDate"
                }
             }
          }
       },
       "actions": {
          "Send_an_email_(V2)": {
             "runAfter": {},
             "type": "ApiConnection",
             "inputs": {
                "body": {
                   "Body": "<p>Title: @{triggerBody()?['title']}<br>\n<br>\nDate published: @{triggerBody()?['updatedOn']}<br>\n<br>\nLink: @{triggerBody()?['primaryLink']}</p>",
                   "Subject": "RSS item: @{triggerBody()?['title']}",
                   "To": "sophia-owen@fabrikam.com"
                },
                "host": {
                   "connection": {
                      "name": "@parameters('$connections')['office365']['connectionId']"
                   }
                },
                "method": "post",
                "path": "/v2/Mail"
             }
          }
       },
       "outputs": {}
    }
    

    重要

    このサンプル ワークフロー定義を再利用するには、 @fabrikam.comなどの組織の職場または学校アカウントが必要です。 架空の電子メール アドレスを実際の電子メール アドレスに置き換えてください。

    Outlook.com や Gmail などの別の電子メール コネクタを使用するには、 Send_an_email_action アクションを 、Azure Logic Apps でサポートされている電子メール コネクタから使用できる同様のアクションに置き換えます。

    Gmail コネクタの使用を希望する場合、ロジック アプリで制限なしにこのコネクタを使用できるのは、G-Suite ビジネス アカウントだけです。 Gmail コンシューマー アカウントをお持ちの場合は、このコネクタを特定の Google 承認済みサービスでのみ使用することも、 Gmail コネクタでの認証に使用する Google クライアント アプリを作成することもできます。 詳細については、「Azure Logic Apps での Google コネクタのデータ セキュリティとプライバシー ポリシー」を参照してください。

  6. 完了したら、ワークフロー定義を保存します。 (ファイル>保存 するか、Ctrl キーを押しながら S キーを押します)。

  7. ロジック アプリ ワークフロー定義を Azure サブスクリプションにアップロードするように求められたら、[ アップロード] を選択します。

    この手順では、Visual Studio Code から Azure portal にロジック アプリワークフロー定義を発行します。これにより、ワークフローが Azure でライブで実行されます。

    Azure portal にロジック アプリをアップロードするために [アップロード] ボタンが強調表示されているダイアログ ボックスを示すスクリーンショット。

デザイナーでワークフローを表示する

Visual Studio Code では、ロジック アプリ ワークフローを読み取り専用のデザイン ビューで開くことができます。 デザイナーでワークフロー定義を編集することはできませんが、デザイナー ビューを使用してワークフローを視覚的に確認できます。

Azure ウィンドウの [Logic Apps (Consumption)] セクションで、ロジック アプリのショートカット メニューから [ デザイナーで開く] を選択します。

読み取り専用デザイナーが別のタブで開き、ロジック アプリのワークフローが表示されます。次に例を示します。

ロジック アプリのワークフローをデザイン ビューで示すスクリーンショット。

Azure portal でワークフローを表示する

Azure portal でロジック アプリ ワークフロー定義を確認するには、次の手順に従います。

  1. Azure portal で、ロジック アプリに関連付けられている同じ Azure アカウントとサブスクリプションを使用してサインインします。

  2. Azure portal の検索ボックスに、ロジック アプリ名を入力します。 結果の一覧からロジック アプリを選択します。

    Azure portal のスクリーンショットで、検索ボックスに入力されたロジック アプリの名前が示され、結果が強調表示されています。

  3. ロジック アプリのサイドバーの [開発ツール] で、デザイナーまたはコード ビューでワークフローを開きます。

デプロイされたロジック アプリの編集

Visual Studio Code では、Azure に既にデプロイされているロジック アプリ リソースのワークフロー定義を開いて編集できます。

重要

運用環境でアクティブに実行されているロジック アプリ ワークフローを編集する前に、中断を最小限に抑え、最初に ロジック アプリ リソースを無効にしてワークフローを中断するリスクを回避します。

  1. Visual Studio Code のアクティビティ バーで、Azure アイコンを選択します。

  2. Azure ウィンドウの [Logic Apps (Consumption)] セクションで、Azure サブスクリプションを展開し、目的のロジック アプリを選択します。

  3. ロジック アプリのショートカット メニューから、[ エディターで開く] を選択します。 または、ロジック アプリ名の横にある編集アイコンを選択します。

    Azure ウィンドウ、ロジック アプリのショートカット メニュー、および [エディターで開く] が選択されていることを示すスクリーンショット。

    Visual Studio Code では、ワークフロー定義を表示できるように、ローカルの一時フォルダーに .logicapp.json ファイルが開きます。

    Visual Studio Code と開いているロジック アプリ ワークフロー定義ファイルを示すスクリーンショット。

  4. ワークフロー定義ファイルに変更を加えます。

  5. 完了したら、変更を保存します (ファイル>保存 するか、Ctrl キーを押しながら S キーを押します)。

  6. Azure portal で変更をアップロードし、既存のロジック アプリ ワークフローを 上書き するように求められたら、[ アップロード] を選択します。

    この手順では、Azure portal でロジック アプリ リソースに更新プログラムを発行します。

    ロジック アプリの変更を Azure portal にアップロードするために [アップロード] ボタンが強調表示されている Visual Studio Code ダイアログ ボックスを示すスクリーンショット。

他のバージョンを表示または昇格する

Visual Studio Code では、ロジック アプリ ワークフローの以前のバージョンを開いて確認できます。 また、以前のバージョンを現在のバージョンに昇格させることもできます。

重要

運用環境でアクティブに実行されているロジック アプリ ワークフローを変更する前に、中断を最小限に抑え、ロジック アプリ リソースを最初に 無効にしてロジック アプリを中断するリスクを回避します

  1. Azure ウィンドウの [Logic Apps (Consumption)] セクションで、Azure サブスクリプションを展開して、関連付けられているロジック アプリを表示します。

  2. サブスクリプションでロジック アプリを展開し、[バージョン] を展開します。

    バージョンの一覧には、ロジック アプリの以前のバージョン (存在する場合) が表示されます。

    Visual Studio Code とロジック アプリの以前のバージョンを示すスクリーンショット。

  3. 以前のバージョンを表示するには、次のいずれかの手順を選択します。

    • JSON 定義を表示するには、 [バージョン] で、その定義のバージョン番号を選択します。 または、バージョンのショートカット メニューから [ エディターで開く] を選択します。

      ローカル コンピューターで新しいファイルが開き、そのバージョンの JSON 定義が表示されます。

    • 読み取り専用デザイナーでバージョンを表示するには、バージョンのショートカット メニューから [ デザイナーで開く] を選択します。

  4. 以前のバージョンを現在のバージョンに昇格させるには、次の手順に従います。

    1. [ バージョン] で、以前のバージョンのショートカット メニューから [ 昇格] を選択します。

      Visual Studio Code と、以前のロジック アプリのバージョンを現在のバージョンに昇格する方法を示すスクリーンショット。

    2. Visual Studio Code で確認を求めるメッセージが表示されたら、 [はい] を選択して続行します。

      Visual Studio Code は選択したバージョンを現在のバージョンに昇格させ、昇格したバージョンに新しい番号を割り当てます。 以前のバージョンは、最上位のバージョンの下に表示されます。

ロジック アプリを無効または有効にする

Visual Studio Code では、発行済みのロジック アプリ ワークフローを編集して変更を保存すると、既にデプロイされているロジック アプリが 上書き されます。 運用環境でロジック アプリ ワークフローが中断されないようにし、中断を最小限に抑えるには、まずロジック アプリ リソースを無効にします。 ワークフローが期待どおりに機能していることを確認したら、ロジック アプリ リソースを再アクティブ化できます。

ロジック アプリ リソースの無効化または有効化は、次の方法でワークフロー インスタンスに影響します。

  • Azure Logic Apps は進行中のワークフローと保留中のワークフローを完了するまで実行し続けます。 このプロセスは、ボリュームやバックログによっては、完了までに時間がかかる場合があります。

  • Azure Logic Apps は、新しいワークフロー インスタンスを作成することも実行することもありません。

  • トリガーは、その条件が次に満たされた時点では起動しません。

  • トリガーの状態は、ワークフローが停止したポイントを記憶します。 そのため、ロジック アプリを再アクティブ化すると、前回の実行以降にまだ処理されていない項目に対してトリガーが起動します。

    ロジック アプリ リソースを再アクティブ化する前に、これらの未処理の項目に対するトリガーの起動を停止するには、トリガーの状態をクリアします。

    1. ワークフローで、トリガーの任意の部分を編集します。
    2. 変更を保存します。 この手順により、トリガーの現在の状態がリセットされます。
    3. ロジック アプリ リソースを再アクティブ化します。
  • ロジック アプリ リソースが無効になっている場合でも、ワークフローの実行を再送信できます。

Visual Studio Code でロジック アプリ リソースを無効または有効にするには、次の手順に従います。

  1. Visual Studio Code で、Azure ウィンドウを開きます。

  2. [ Logic Apps (Consumption)] セクションで 、Azure サブスクリプションを展開して、関連付けられているロジック アプリを表示します。

  3. ロジック アプリ リソースを無効にするには、ロジック アプリのショートカット メニューから [ 無効] を選択します。

    Visual Studio Code とロジック アプリ リソースを無効にする方法を示すスクリーンショット。

  4. ロジック アプリ リソースを再アクティブ化する準備ができたら、ロジック アプリのショートカット メニューから [有効] を選択します。

    Visual Studio Code とロジック アプリ リソースを有効にする方法を示すスクリーンショット。

ロジック アプリを削除する

ロジック アプリを削除すると、ワークフロー インスタンスに次のような影響が生じます。

  • Azure Logic Apps は、進行中のワークフロー実行と保留中のワークフロー実行を取り消そうとします。

    大量のボリュームやバックログがあったとしても、ほとんどの実行は完了前または開始前にキャンセルされます。 ただし、キャンセル プロセスは完了までに時間がかかる場合があります。 一方で、サービスはキャンセル処理を進めている間にも、実行のためにいくつかの実行ジョブを取得してしまう可能性があります。

  • Azure Logic Apps は、新しいワークフロー インスタンスを作成することも実行することもありません。

  • ワークフローを削除してから同じワークフローを再作成すると、再作成されたワークフローのメタデータが異なります。 削除されたワークフローを呼び出したワークフローを再保存する必要があります。 再保存すると、呼び出し元は再作成されたワークフローの正しい情報を取得します。 それ以外の場合、再作成したワークフローの呼び出しは、Unauthorized エラーで失敗します。 この動作は、統合アカウントのアーティファクトを使用するワークフローや、Azure 関数を呼び出すワークフローにも当てはまります。

Visual Studio Code からロジック アプリ リソースを削除するには、次の手順に従います。

  1. Visual Studio Code で、Azure ウィンドウを開きます。

  2. [ Logic Apps (Consumption)] セクションで 、Azure サブスクリプションを展開して、関連付けられているロジック アプリ リソースを表示します。 削除するロジック アプリ リソースを見つけます。

  3. ロジック アプリのショートカット メニューから [削除] を選択 します

    Visual Studio Code とロジック アプリ リソースを削除する方法を示すスクリーンショット。