快速入門:在 Azure Logic Apps 中使用 Azure CLI 建立和管理工作流程

適用於:Azure Logic Apps (使用量)

本快速入門說明如何使用 Azure CLI Logic Apps 延伸模組 (az logic),建立和管理在 Azure Logic Apps 中執行的自動化工作流程。 從命令列中,您可以使用 JSON 檔案取得邏輯應用程式工作流程定義,以在多租用戶 Azure Logic Apps 中建立取用邏輯應用程式。 然後,您可以從命令列執行 listshow (get)、updatedelete 之類的作業來管理邏輯應用程式。

警告

Azure CLI Logic Apps 擴充功能目前為「實驗性」擴充功能,不在客戶支援涵蓋範圍內。 請小心使用此 CLI 擴充功能,特別是當您選擇在生產環境中使用擴充功能時。

本快速入門目前僅適用於多租用戶 Azure Logic Apps 中執行的取用邏輯應用程式工作流程。 Azure CLI 目前不適用於單一租用戶 Azure Logic Apps 中執行的標準邏輯應用程式工作流程。 如需詳細資訊,請參閱 Azure Logic Apps 中的資源類型和主機差異

如果您不熟悉 Azure Logic Apps,請透過 Azure 入口網站在 Visual Studio 中,以及在 Visual Studio Code 中,了解如何建立您的第一個取用邏輯應用程式工作流程。

必要條件

先決條件檢查

開始之前,請驗證環境:

  • 登入 Azure 入口網站,並執行 az login 檢查您的訂用帳戶是否有效。

  • 執行 az --version,在終端機或命令視窗中檢查您的 Azure CLI 版本。 如需最新版本,請參閱最新版本資訊

    如果您沒有最新版本,請遵循適用於您作業系統或平台的安裝指南,更新您的安裝。

範例 - 建立資源群組

如果您的邏輯應用程式還沒有資源群組,請使用 az group create 命令來建立群組。 例如,下列命令會在 westus 位置建立名為 testResourceGroup 的資源群組。

az group create --name testResourceGroup --location westus

當您的資源群組成功建立時,輸出會將 provisioningState 顯示為 Succeeded

<...>
  "name": "testResourceGroup",
  "properties": {
    "provisioningState": "Succeeded"
  },
<...>

工作流程定義

在使用 Azure CLI 來建立新的邏輯應用程式更新現有的邏輯應用程式之前,您需要邏輯應用程式的工作流程定義。 在 Azure 入口網站中,您可以從 [設計工具] 檢視切換至 [程式碼] 檢視,以 JSON 格式來檢視邏輯應用程式的基礎工作流程定義。

當執行命令來建立或更新邏輯應用程式時,會將您的工作流程定義上傳為必要參數 (--definition)。 您必須建立工作流程定義,作為遵循工作流程定義語言結構描述的 JSON 檔案。

從 CLI 建立邏輯應用程式

若要從 Azure CLI 建立邏輯應用程式工作流程,請使用 az logic workflow create 命令並指定 JSON 檔案來取得定義。

az logic workflow create --definition
                         --location
                         --name
                         --resource-group
                         [--access-control]
                         [--endpoints-configuration]
                         [--integration-account]
                         [--integration-service-environment]
                         [--state {Completed, Deleted, Disabled, Enabled, NotSpecified, Suspended}]
                         [--tags]

您的命令必須包含下列必要參數

參數 數值 Description
工作流程定義 --definition 具有邏輯應用程式工作流程定義的 JSON 檔案。
Location --location -l 邏輯應用程式所在的 Azure 區域。
名稱 --name -n 邏輯應用程式的名稱。 名稱只能包含字母、數字、連字號 (-)、底線 (_)、括弧(()) 和句點 (.)。 名稱在整個 Azure 中也必須是唯一的。
資源群組名稱 --resource-group -g 要在其中建立邏輯應用程式的 Azure 資源群組。 如果您的邏輯應用程式還沒有資源群組,請在開始之前先建立資源群組

您也可以包含其他選擇性參數,來設定邏輯應用程式的存取控制、端點、整合帳戶、整合服務環境、狀態,以及資源標籤。

範例 - 建立邏輯應用程式

在此範例中,會在位置 westus 的資源群組 testResourceGroup 中建立名為 testLogicApp 的工作流程。 JSON 檔案 testDefinition.json 包含工作流程定義。

az logic workflow create --resource-group "testResourceGroup" --location "westus" --name "testLogicApp" --definition "testDefinition.json"

當您的工作流程成功建立時,CLI 會顯示新工作流程定義的 JSON 程式碼。 如果您的工作流程建立失敗,請參閱可能的錯誤清單

從 CLI 更新邏輯應用程式

若要從 Azure CLI 更新邏輯應用程式的工作流程,請使用 az logic workflow create 命令。

您的命令必須包含與您建立邏輯應用程式時相同的必要參數。 您也可以新增與建立邏輯應用程式時相同的選擇性參數

az logic workflow create --definition
                         --location
                         --name
                         --resource-group
                         [--access-control]
                         [--endpoints-configuration]
                         [--integration-account]
                         [--integration-service-environment]
                         [--state {Completed, Deleted, Disabled, Enabled, NotSpecified, Suspended}]
                         [--tags]

範例 - 更新邏輯應用程式

在此範例中,在上一節中建立的範例工作流程會更新為使用不同的 JSON 定義檔 newTestDefinition.json,並以描述值新增兩個資源標籤 testTag1testTag2

az logic workflow create --resource-group "testResourceGroup" --location "westus" --name "testLogicApp" --definition "newTestDefinition.json" --tags "testTag1=testTagValue1" "testTag2=testTagValue"

當您的工作流程成功更新時,CLI 會顯示邏輯應用程式的已更新工作流程定義。 如果您的更新失敗,請參閱可能的錯誤清單

從 CLI 刪除邏輯應用程式

若要從 Azure CLI 刪除邏輯應用程式的工作流程,請使用 az logic workflow delete 命令。

您的命令必須包含下列必要參數

參數 數值 描述
Name --name -n 邏輯應用程式的名稱。
資源群組名稱 -resource-group -g 邏輯應用程式所在的資源群組。

您也可以包含選擇性參數,以略過確認提示 (--yes -y)。

az logic workflow delete --name
                         --resource-group
                         [--yes]

CLI 接著會提示您確認刪除邏輯應用程式。 您可以使用選擇性參數 --yes -y 搭配命令來略過確認提示。

Are you sure you want to perform this operation? (y/n):

若要確認刪除邏輯應用程式,請在 CLI 中列出邏輯應用程式,或在 Azure 入口網站中檢視邏輯應用程式。

範例 - 刪除邏輯應用程式

在此範例中,會刪除在上一節中建立的範例工作流程

az logic workflow delete --resource-group "testResourceGroup" --name "testLogicApp"

在您使用 y 來回應確認提示之後,即會刪除邏輯應用程式。

考量 - 刪除邏輯應用程式

刪除邏輯應用程式會以下列方式影響工作流程執行個體:

  • Azure Logic Apps 會盡力取消任何進行中和擱置的執行。

    即使數量較大或存在待處理項目,大部分執行都會在完成或開始之前取消。 不過,取消程序可能需要一些時間才能完成。 但執行階段處理取消的期間,可能挑選部分執行。

  • Azure Logic Apps 不會建立或執行新的工作流程執行個體。

  • 如果您刪除某個工作流程,然後重新建立相同的工作流程,重新建立的工作流程不會擁有與刪除的工作流程相同的中繼資料。 您必須重新儲存任何呼叫已刪除工作流程的工作流程。 如此一來,呼叫者就能獲得重新建立的工作流程的正確資訊。 否則,對重新建立的工作流程的呼叫會因為 Unauthorized 錯誤而失敗。 此行為也適用於在整合帳戶中使用成品的工作流程,以及呼叫 Azure 函數的工作流程。

在 CLI 中顯示邏輯應用程式

若要取得特定的邏輯應用程式工作流程,請使用 az logic workflow show 命令。

az logic workflow show --name
                       --resource-group

您的命令必須包含下列必要參數

參數 數值 描述
Name --name -n 邏輯應用程式的名稱。
資源群組名稱 --resource-group -g 邏輯應用程式所在的資源群組名稱。

範例 - 取得邏輯應用程式

在此範例中,資源群組 testResourceGroup 中的邏輯應用程式 testLogicApp 會搭配完整記錄傳回,以進行偵錯。

az logic workflow show --resource-group "testResourceGroup" --name "testLogicApp" --debug

在 CLI 中列出邏輯應用程式

若要依訂用帳戶列出邏輯應用程式,請使用 az logic workflow list 命令。 此命令會傳回邏輯應用程式工作流程的 JSON 程式碼。

您可以依下列選擇性參數篩選結果:

參數 數值 Description
資源群組名稱 --resource-group -g 您想要依其篩選結果的資源群組名稱。
項目數 --top 結果中包含的項目數。
篩選器 --filter 您要在清單上使用的篩選類型。 您可以依狀態 (State)、觸發程序 (Trigger) 和所參考資源 (ReferencedResourceId) 的識別碼進行篩選。
az logic workflow list [--filter]
                       [--resource-group]
                       [--top]

範例 - 列出邏輯應用程式

在此範例中,資源群組 testResourceGroup 中所有已啟用的工作流程都會以 ASCII 資料表格式傳回。

az logic workflow list --resource-group "testResourceGroup" --filter "(State eq 'Enabled')" --output "table"

錯誤

下列錯誤指出未安裝 Azure Logic Apps CLI 擴充功能。 在您的電腦上,遵循安裝 Logic Apps 延伸模組的必要條件中的步驟。

az: 'logic' is not in the 'az' command group. See 'az --help'. If the command is from an extension, please make sure the corresponding extension is installed. To learn more about extensions, please visit https://learn.microsoft.com/cli/azure/azure-cli-extensions-overview

下列錯誤可能指出上傳工作流程定義的檔案路徑不正確。

Expecting value: line 1 column 1 (char 0)

全域參數

您可以使用下列選擇性的全域 Azure CLI 參數搭配 az logic 命令:

參數 數值 Description
輸出格式 --output -o 變更預設 JSON 的輸出格式
僅顯示錯誤 --only-show-errors 隱藏警告,只顯示錯誤。
詳細資訊 --verbose 顯示詳細資訊記錄。
偵錯 --debug 顯示所有的偵錯記錄。
說明訊息 --help -h 顯示說明對話方塊。
查詢 --query 設定 JSON 輸出的 JMESPath 查詢字串。

下一步

如需 Azure CLI 的詳細資訊,請參閱 Azure CLI 文件

您可以在 Microsoft 的程式碼範例瀏覽器中找到其他 Azure Logic Apps CLI 指令碼範例。

接下來,您可以使用範例指令碼和工作流程定義,透過 Azure CLI 建立範例應用程式邏輯。