将 Azure 计划程序作业迁移到 Azure 逻辑应用

Important

Azure 逻辑应用将替换即将停用的 Azure 计划程序。 若要安排作业,请按照本文说明迁移到 Azure 逻辑应用。

本文介绍如何通过使用 Azure 逻辑应用而非 Azure 计划程序来创建自动化工作流,从而安排一次性作业和重复作业。 使用逻辑应用创建计划的作业时,将获得以下好处:

  • 不必担心作业集合的概念,因为每个逻辑应用都是一个单独的 Azure 资源。

  • 可以使用单个逻辑应用运行多个一次性作业。

  • Azure 逻辑应用服务支持时区和夏令时 (DST)。

若要了解详细信息,请参阅什么是 Azure 逻辑应用? 或尝试在此快速入门中创建第一个逻辑应用:创建第一个逻辑应用

先决条件

安排一次性作业

只需创建一个逻辑应用即可运行多个一次性作业。

创建逻辑应用

  1. Azure 门户的逻辑应用设计器中创建一个空白的逻辑应用。

    有关基本步骤,请遵循快速入门:创建第一个逻辑应用

  2. 在搜索框中,输入“收到 http 请求时”作为筛选器。 从触发器列表中选择此触发器:“当收到 HTTP 请求时”

    添加“请求”触发器

  3. 对于请求触发器,可以选择提供 JSON 架构,这有助于逻辑应用设计器了解传入请求的输入结构,使你稍后在工作流中更易选择输出。

    若要指定架构,请在“请求正文 JSON 架构”框中输入架构,例如:

    请求架构

    如果你没有架构,但有一个 JSON 格式的示例有效负载,则可以基于该有效负载生成一个架构。

    1. 在请求触发器中,选择“使用示例有效负载生成架构”。

    2. 在“输入或粘贴示例 JSON 有效负载”下,提供示例有效负载并选择“完成”,例如:

      示例有效负载

  4. 在触发器下,选择“下一步”。

  5. 在搜索框中,输入“延迟截止时间”作为筛选器。 在操作列表下选择此操作:“延迟截止时间”

    此操作会暂停逻辑应用工作流,直到指定的日期和时间。

    添加“延迟截止时间”操作

  6. 输入要启动逻辑应用工作流的时间戳。

    在“时间戳”框内单击时,会显示动态内容列表,以便根据需要选择触发器的输出。

    提供“延迟截止时间”详细信息

  7. 通过从大约 200 多个连接器中进行选择,来添加要运行的任何其他操作。

    例如,可以包含向 URL 发送请求的 HTTP 操作,或包含处理存储队列、服务总线队列或服务总线主题的操作:

    HTTP 操作

  8. 完成后,保存逻辑应用。

    保存逻辑应用

    第一次保存逻辑应用时,逻辑应用的请求触发器的终结点 URL 会显示在“HTTP POST URL”框中。 如果要调用逻辑应用并将输入发送到逻辑应用进行处理,请使用此 URL 作为调用目标。

    保存请求触发器终结点 URL

  9. 复制并保存此终结点 URL,以便稍后发送触发逻辑应用的手动请求。

启动一次性作业

若要手动运行或触发一次性作业,请发送对逻辑应用的请求触发器终结点 URL 的调用。 在此调用中,请指定要发送的输入或有效负载,你之前可能已通过指定架构进行了描述。

例如,通过使用 Postman 应用,可以采用与此示例类似的设置创建 POST 请求,然后选择“发送”以发出请求。

请求方法 URL 正文 标头
POST raw

JSON(application/json)

在“raw”框中,输入要在请求中发送的有效负载。

注意:此设置会自动配置“标头”值。

:Content-Type
:application/json

发送请求以手动触发逻辑应用

发送调用后,逻辑应用的响应会显示在“正文”选项卡中的“raw”框下方。

Important

如果稍后想取消作业,请选择“标头”选项卡。在响应中查找并复制 x-ms-workflow-run-id 标头值。

响应

取消一次性作业

在逻辑应用中,每个一次性作业均作为单个逻辑应用运行实例执行。 若要取消一次性作业,可以使用逻辑应用 REST API 中的工作流运行 - 取消。 发送对触发器的调用时,请提供工作流运行 ID

安排重复作业

创建逻辑应用

  1. Azure 门户的逻辑应用设计器中创建一个空白的逻辑应用。

    有关基本步骤,请遵循快速入门:创建第一个逻辑应用

  2. 在搜索框中,输入“定期”作为筛选器。 从触发器列表中选择此触发器:“重复”

    添加“重复”触发器

  3. 如果需要,可以设置更高级的计划。

    高级计划

    有关高级计划选项的详细信息,请参阅使用 Azure 逻辑应用创建和运行重复任务和工作流

  4. 通过从 200 多个连接器中进行选择,来添加所需的其他操作。 在触发器下,选择“下一步”。 查找并选择所需的操作。

    例如,可以包含向 URL 发送请求的 HTTP 操作,或包含处理存储队列、服务总线队列或服务总线主题的操作:

    HTTP 操作

  5. 完成后,保存逻辑应用。

    保存逻辑应用

高级设置

下面是可以自定义作业的其他方法。

重试策略

若要控制在出现间歇性失败时操作尝试在逻辑应用中重新运行的方式,可以在每个操作的设置中设置重试策略,例如:

  1. 打开该操作的 (...) 菜单,选择“设置”。

    打开操作设置

  2. 选择所需的重试策略。 有关每个策略的详细信息,请参阅重试策略

    选择重试策略

处理异常和错误

在 Azure 计划程序中,如果默认操作无法运行,则可以运行解决错误情况的替代操作。 在 Azure 逻辑应用中,也可以执行相同的任务。

  1. 在逻辑应用设计器中要处理的操作上方,将指针移到各步骤之间的箭头上,然后选择“添加并行分支”。

    添加并行分支

  2. 查找并选择要作为替代操作运行的操作。

    添加并行操作

  3. 在替代操作上,打开 (...) 菜单,选择“配置随后运行”。

    配置随后运行

  4. 清除“成功”属性的相应框。 选择以下属性:“失败”、“已跳过”和“已超时”

    设置“随后运行”属性

  5. 完成后,选择“完成”。

若要详细了解异常处理,请参阅处理错误和异常 - RunAfter 属性

常见问题

:Azure 计划程序何时停用?
:Azure 计划程序计划于 2019 年 9 月 30 日停用。

:该服务停用后,会对我的计划程序作业集合和作业有何影响?
:将从系统中删除所有计划程序作业集合和作业。

:在将我的计划程序作业迁移到逻辑应用之前,是否必须备份或执行任何其他任务?
:作为最佳做法,请始终备份你的工作。 在删除或禁用计划程序作业之前,请检查你创建的逻辑应用是否按预期运行。

:是否有可以帮助我将作业从计划程序迁移到逻辑应用的工具?
:每个计划程序作业都是唯一的,因此不存在一个通用的工具。 但是,可以使用各种脚本来根据需要进行修改。 对于脚本可用性,请以后再回来查看。

后续步骤