將 Azure 排程器作業遷移至 Azure Logic Apps

重要

Azure Logic Apps 已取代自 2022 年 1 月 31 日起完全淘汰的 Azure 排程器。 請遵循本文中的步驟,將 Azure 排程器工作重新建立為 Azure Logic Apps 中的工作流程,以移轉您的 Azure 排程器作業。 Azure 排程器在 Azure 入口網站 中較久。 Azure 排程器 REST APIAzure 排程器 PowerShell Cmdlet 無法再運作。

本文說明如何使用 Azure Logic Apps 建立自動化工作流程,而不是使用 Azure 排程器來排程一次性和週期性作業。 當您使用 Azure Logic Apps 建立排程的作業時,您會獲得下列優點:

  • 使用可視化設計工具以及數百個服務的現成連接器來建置您的作業,例如 Azure Blob 儲存體、Azure 服務匯流排、Office 365 Outlook 和 SAP。

  • 將每個排程的工作流程管理為一流的 Azure 資源。 您不必擔心作業集合的概念,因為每個邏輯應用程式都是個別的 Azure 資源。

  • 使用單一邏輯應用程式工作流程執行多個一次性作業。

  • 設定支援時區的排程,並自動調整為日光節約時間(DST)。

若要深入瞭解,請參閱什麼是 Azure Logic Apps?,或遵循快速入門:在多租使用者 Azure Logic Apps 中建立範例取用邏輯應用程式工作流程,或嘗試建立您的第一個邏輯應用程式工作流程

必要條件

  • Azure 帳戶和訂用帳戶。 如果您沒有 Azure 訂用帳戶, 請註冊免費的 Azure 帳戶

  • 若要傳送 HTTP 要求來觸發邏輯應用程式工作流程,請使用 Postman 傳統型應用程式之類的工具。

使用腳本進行移轉

每個排程器作業都是唯一的,因此,將 Azure 排程器作業移轉至 Azure Logic Apps 時,沒有任何一個適合的工具存在。 不過,您可以 編輯此文本 以符合您的需求。

排程一次性作業

您可以只建立單一邏輯應用程式工作流程來執行多個一次性作業。

  1. Azure 入口網站 中,使用設計工具建立空白邏輯應用程式工作流程。

    如需基本步驟,請遵循 建立範例取用邏輯應用程式工作流程

  2. 在設計工具搜尋方塊中,輸入 HTTP 要求尋找要求觸發程式時。 從 [ 觸發程式] 列表中,選取名為 [收到 HTTP 要求時] 的觸發程式。

    Screenshot showing the Azure portal and the workflow designer with the

  3. 針對要求觸發程式,您可以選擇性地提供 JSON 架構,以協助工作流程設計工具瞭解要求觸發程式輸入呼叫中包含的輸入結構,並讓您更輕鬆地在工作流程稍後選取輸出。

    在 [ 要求本文 JSON 架構 ] 方塊中,輸入架構,例如:

    Screenshot showing the Request trigger with a sample JSON request schema.

    如果您沒有架構,但具有 JSON 格式的範例承載,您可以從該承載產生架構。

    1. 在 [要求觸發程式] 中,選取 [ 使用範例承載來產生架構]。

    2. [輸入或貼上範例 JSON 承載] 底下,提供您的範例承載,然後選取 [ 完成],例如:

      Screenshot showing a sample JSON payload.

      {
         "runat": "2012-08-04T00:00Z",
         "endpoint": "https://www.bing.com"
      }
      
  4. 在觸發程式底下,選取 [下一步]。

  5. 在設計工具搜尋方塊中,輸入 延遲直到 為止。 從 [ 動作] 清單中,選取名為 Delay 直到 的動作。

    此動作會暫停邏輯應用程式工作流程,直到指定的日期和時間為止,例如:

    Screenshot showing the

  6. 輸入您想要啟動邏輯應用程式工作流程的時間戳。

    當您在 [ 時間戳 ] 方塊內按下時,動態內容清單隨即出現,因此您可以選擇性地從觸發程式選取輸出。

    Screenshot showing the

  7. 數百個現成可用的連接器中選取,以新增您想要執行的任何其他動作。

    例如,您可以包含 HTTP 動作,以將要求傳送至 URL 或動作,以使用 儲存體 佇列、服務匯流排 服務匯流排 主題:

    Screenshot showing the

  8. 完成時,請儲存邏輯應用程式工作流程。

    Screenshot showing the designer toolbar with

    當您第一次儲存邏輯應用程式工作流程時,邏輯應用程式工作流程的 [要求] 觸發程式端點 URL 會出現在 [HTTP POST URL] 方塊中。 若要觸發邏輯應用程式工作流程,並將輸入傳送至工作流程進行處理,請將要求傳送至產生的 URL 作為呼叫目的地,例如:

    Screenshot showing the generated Request trigger endpoint URL.

  9. 複製並儲存端點 URL,以便您稍後傳送手動要求來觸發邏輯應用程式工作流程。

啟動一次性作業

若要手動執行或觸發一次性作業,請將呼叫傳送至邏輯應用程式要求觸發程式的端點 URL。 在此呼叫中,指定要傳送的輸入或承載,您可能先前已指定要透過指定架構來描述的輸入或承載。

例如,使用 Postman 應用程式,您可以使用類似此範例的設定來建立 POST 要求,然後選取 [ 傳送 ] 來提出要求。

要求方法 URL Body 標頭
POST <endpoint-URL> raw

JSON(application/json)

在原始方塊中,輸入您要在要求中傳送的承載。

注意:此設定會自動設定 標頭 值。

機碼:內容類型
:application/json

Screenshot showing the request to send for manually triggering your logic app workflow.

傳送呼叫之後,邏輯應用程式工作流程的回應會出現在 [本文] 索引標籤的原始方塊底下

重要

如果您想要稍後取消作業,請選取 [標頭] 索引 卷標。在響應中尋找並複製 x-ms-workflow-run-id 標頭值。

Screenshot showing the response.

取消一次性作業

在 Azure Logic Apps 中,每個一次性作業都會以單一工作流程執行實例的形式執行。 若要取消一次性作業,您可以使用 Azure Logic Apps REST API 中的工作流程執行 - 取消 。 當您傳送呼叫觸發程式時,請提供 工作流程執行標識碼

排程週期性工作

  1. Azure 入口網站 中,於設計工具中建立空白邏輯應用程式工作流程。

    如需基本步驟,請遵循 在多租使用者 Azure Logic Apps 中建立範例取用邏輯應用程式工作流程。

  2. 在設計工具搜尋方塊中,輸入 週期。 從 [ 觸發程式] 列表中,選取名為 Recurrence 的觸發程式。

    Screenshot showing the Azure portal and workflow designer with the

  3. 如果您想要,請設定更進階的排程。

    Screenshot showing the

    如需進階排程選項的詳細資訊,請參閱 使用 Azure Logic Apps 建立和執行週期性工作和工作流程。

  4. 數百個現成可用的連接器中選取,以新增您想要的其他動作。 在觸發程式底下,選取 [下一步]。 尋找並選取您想要的動作。

    例如,您可以包含將要求傳送至 URL 的 HTTP 動作,或處理 儲存體 佇列、服務匯流排 佇列或 服務匯流排 主題的動作:

    Screenshot showing an H T T P action with a POST method.

  5. 完成時,請儲存邏輯應用程式工作流程。

    Screenshot showing the designer toolbar with the

進階設定

下列各節說明您可以自定義作業的其他方式。

重試原則

若要控制動作在發生間歇性失敗時嘗試在邏輯應用程式工作流程中重新執行的方式,您可以在每個動作的設定中設定 重試原則 ,例如:

  1. 開啟動作的省略號 (...) 功能表,然後選取 [設定]。

    Screenshot showing an action's

  2. 選取您想要的重試原則。 如需每個原則的詳細資訊,請檢閱 重試原則

    Screenshot showing the selected

處理例外狀況和錯誤

在 Azure 排程器中,如果預設動作無法執行,您可以執行可解決錯誤狀況的改變動作。 在 Azure Logic Apps 中,您也可以執行相同的工作。

  1. 在工作流程設計工具中,在您想要處理的動作上方,將指標移至步驟之間的箭號,然後選取 [ 新增平行分支]。

    Screenshot showing

  2. 尋找並選取您想要改為執行的動作做為替代動作。

    Screenshot showing the selected parallel action.

  3. 在替代動作上,開啟省略號 (...) 功能表,然後選取 [ 設定執行之後]。

    Screenshot showing

  4. 清除的方塊 是成功的 屬性。 選取名為 的屬性失敗已略過,而且 已逾時。

    Screenshot showing the selected

  5. 完成後,請選取 [ 完成]。

若要深入瞭解例外狀況處理,請參閱 處理錯誤和例外狀況 - RunAfter 屬性

常見問題集

:Azure 排程器何時淘汰?
:Azure 排程器已於 2022 年 1 月 31 日完全淘汰。 如需一般更新,請參閱 Azure 更新 - 排程器

:Azure 排程器淘汰之後,我的作業集合和作業會發生什麼事?
:所有 Azure 排程器作業集合和作業都會停止執行,並從系統刪除。

:在將 Azure 排程器工作移轉至 Azure Logic Apps 之前,我是否需要備份或執行任何其他工作?
:最佳做法是一律備份您的工作。 在刪除或停用 Azure 排程器作業之前,請先檢查您所建立的邏輯應用程式工作流程是否如預期般執行。

:從 Azure 排程器排程我的排程 Azure Web 作業會發生什麼情況?
:使用這種方式排 程 Web 作業的 Web 作業 不會在內部使用 Azure 排程器:「若要讓排程運作,它需要將網站設定為 AlwaysOn,而不是 Azure 排程器,而是排程器的內部實作。唯一受影響的 Web 作業是特別使用 Azure 排程器使用 Web 作業 API 執行 Web 作業的 Web 作業。 您可以使用 HTTP 動作,從邏輯應用程式工作流程觸發這些 WebJobs。

:是否有工具可協助我將工作從 Azure 排程器移轉至 Azure Logic Apps?
:每個 Azure 排程器工作都是唯一的,因此沒有任何一個大小適合的工具存在。 不過,根據您的需求,您可以 編輯此腳本,將 Azure 排程器作業移轉至 Azure Logic Apps

:我可以在哪裡取得移轉 Azure 排程器作業的支援?
:以下是取得支援的一些方式:

Azure 入口網站

如果您的 Azure 訂用帳戶有付費支援方案,您可以在 Azure 入口網站 中建立技術支援要求。 否則,您可以選取不同的支持選項。

  1. 在 Azure 入口網站 主功能表上,選取 [說明 + 支援]。

  2. 從 [ 支援] 功能表中,選取 [ 新增支援要求]。 提供關於您要求的下列資訊:

    屬性
    問題類型 技術
    訂用帳戶 <your-Azure-subscription>
    服務 在 [監視和管理] 底下,選取 [排程器]。 如果您找不到 排程器,請先選取 [所有服務 ]。
  3. 選取您想要的支持選項。 如果您有付費支援方案,請選取 [ 下一步]。

下一步