快速入门:在 Azure 门户中创建示例消耗逻辑应用工作流

适用于:Azure 逻辑应用 (消耗)

本快速入门介绍如何创建一个自动化工作流,用于监视 RSS 源并发送电子邮件通知。 你将使用以下连接器操作来生成一个 Consumption Logic App 工作流:

  • RSS 连接器,提供用于检查 RSS 源的触发器。
  • Office 365 Outlook 连接器,该连接器提供发送电子邮件的操作。

多租户环境中的 Azure 逻辑应用 上运行消耗工作流。 完成本快速入门后,工作流如以下示例所示:

Screenshot 显示已完成的工作流带有 RSS 触发器和 Office 365 Outlook 操作。

此示例使用了在工作流中可使用的 1,400 多个连接器 中的两个连接器的操作。 虽然此示例是基于云的,但Azure 逻辑应用支持跨云、本地和混合环境连接应用、数据、服务和系统的工作流。

若要使用其他工具创建和管理消耗逻辑应用工作流,请参阅以下快速入门:

  • 在 Visual Studio Code
  • 使用 Azure CLI

若要创建在单租户Azure 逻辑应用中运行的标准逻辑应用工作流,请参阅 使用 Azure 门户创建标准逻辑应用工作流示例

先决条件

创建消耗逻辑应用资源

  1. Azure 门户中,使用 Azure 帐户登录。

  2. 在Azure门户搜索框中,输入 logic app,然后选择 Logic apps

    截图显示了 Azure Portal 搜索框,其中输入的单词为 Logic app,并显示出所选内容 Logic apps。

  3. 在“逻辑应用”页工具栏上,选择“添加”

    此时会显示“创建逻辑应用”页,其中显示了以下选项

    计划 说明
    消耗 创建一个逻辑应用资源,该资源仅支持在多租户Azure 逻辑应用中运行的一个工作流,并使用 Consumption 模型进行计费
    标准 创建支持多个工作流的逻辑应用资源。 可以使用以下选项:

    - Workflow 服务计划:工作流在单租户 Azure 逻辑应用 中运行,并使用 Standard 模型进行计费

    - 应用服务环境 V3:工作流运行在单租户 Azure 逻辑应用 中,并使用 应用服务环境 方案计费
  4. 创建逻辑应用页上,选择消耗(多租户)>选择

  5. “基本信息 ”选项卡上,提供逻辑应用资源的以下信息:

    属性 需要 说明
    订阅 < Azure-subscription-name> Azure订阅名称。
    资源组 < Azure-resource-group-name> Azure 资源组中创建逻辑应用和相关资源。 提供跨区域唯一的名称,并且仅包含字母、数字、连字符(-)、下划线(_)、括号(()或句点(.)。

    本示例创建名为 Consumption-RG 的资源组。
    逻辑应用名称 < logic-app-name> 提供跨区域唯一的名称,并且仅包含字母、数字、连字符(-)、下划线(_)、括号(()或句点(.)。

    本示例创建名为 My-Consumption-Logic-App 的逻辑应用资源。
    区域 < Azure-region> 逻辑应用的Azure数据中心区域。

    此示例使用“中国北部”。
    启用日志分析 只在要启用诊断日志记录时,才更改此选项。 对于本快速入门,请保留默认选择。

    注意

    在支持可用性区域的 Azure 区域中,新建和现有的消耗逻辑应用工作流会自动启用可用性区域。 有关详细信息,请参阅Azure Functions 的可靠性使用区域冗余和可用性区域保护逻辑应用免受区域故障的影响

    完成后,设置类似于以下示例:

    Screenshot 显示Azure门户和消费逻辑应用资源创建页面。

  6. 准备就绪后,选择“查看 + 创建”。 在出现的验证页面上,确认提供的所有信息,并选择“创建”。

  7. Azure成功部署逻辑应用资源后,请选择Go 到资源。 或者,使用Azure搜索框查找并选择逻辑应用资源。

    屏幕截图显示了资源部署页和名为“转到资源”的所选按钮。

添加触发器

工作流始终以单个触发器开始,该触发器指定在工作流中运行任何后续操作之前要满足的条件。 每次触发触发器时,Azure 逻辑应用创建并运行工作流实例。 如果触发器没有触发,则不会创建或运行任何工作流实例。

此示例使用 RSS 触发器根据指定的计划检查 RSS 源。 如果源中存在新项,触发器会被触发,并会创建新的工作流实例,然后运行。 如果在检查之间存在多个新项,则触发器会针对每个项触发,并为每个项运行一个单独的新工作流实例。 默认情况下,同时创建的工作流实例也同时运行或并发运行。

  1. 在逻辑应用资源边栏上的 “开发工具”下,选择设计器以打开工作流。

  2. 按照常规步骤添加RSS触发器,名为“当源项发布时”

  3. 在触发器窗格中,提供以下信息:

    参数 需要 说明
    RSS 源 URL < RSS-feed-URL> 要监视的 RSS 源 URL。

    本示例使用《华尔街日报》的 RSS 源 https://feeds.content.dowjones.io/public/rss/RSSMarketsMain。 但可以使用不需要 HTTP 授权的任何 RSS 源。 选择经常发布的 RSS 源,以便可以轻松地测试工作流。
    Chosen 属性将用于确定哪些项为新项 PublishDate 确定哪些项是新项的属性。
    时间间隔 30 在源检查之间需等待的时间间隔数。

    此示例使用 30 作为间隔,因为此值是 RSS 触发器的最小间隔
    频率 分钟 用于每个间隔的频率单位。

    此示例使用“分钟”作为频率。
    时区 <时区 用于检查 RSS 源的时区。
    开始时间 <开始时间> 用于检查 RSS 源的开始时间。

    屏幕截图显示了 RSS 触发器设置,其中包括 RSS URL、频率和间隔等。

  4. 保存工作流。 在设计器工具栏上选择“保存”。

    此步骤会自动在 Azure 门户中实时发布逻辑应用资源和工作流。 但是,除了启动触发器以外,工作流尚未执行其他任何任务,只是根据指定的计划检查 RSS 源。 在后面的部分中,您需要添加一个动作,以指定触发器触发时要发生的事情。

  5. 由于此 RSS 触发器的默认双编码行为,必须编辑触发器定义以删除该行为:

    1. 设计器 工具栏上,选择 “代码”视图

      重要

      不要在触发器信息窗格中选择“ 代码视图 ”选项卡。 此选项卡以只读模式打开代码视图。

    2. 在代码编辑器中,找到行 "feedUrl": "@{encodeURIComponent(encodeURIComponent('https://feeds.content.dowjones.io/public/rss/RSSMarketsMain'))}"

    3. 删除命名 encodeURIComponent() 的额外函数,以便只有一个实例,例如:

      "feedUrl": "@{encodeURIComponent('https://feeds.content.dowjones.io/public/rss/RSSMarketsMain')}"

  6. 保存更改。 在代码视图工具栏上,选择“ 保存”。

    每次在设计器或代码视图中保存对工作流的更改时,Azure立即在Azure门户中发布这些更改。

  7. 返回到设计器。 在代码视图工具栏上,选择 “设计器”。

在下一部分中,添加要在满足触发条件时运行的操作,从而激活触发器。

添加操作

在触发器之后, 动作 是在工作流中运行某个操作的任何后续步骤。 任何操作都可以使用任何之前操作的输出,包括触发器。 可以根据需要为方案添加任意数量的操作,以达到工作流限制,并创建不同的操作路径或分支。

本示例使用 Office 365 Outlook 的一项操作,每当新的 RSS 源项触发时,该操作便发送一封电子邮件。 如果触发器检查之间存在多个新项,则会收到多个电子邮件。

  1. 在设计器中,按照常规步骤,例如,添加一个发送电子邮件的连接器操作:

    • 如果你有一个 Microsoft 工作或学校帐户,请添加名为 Office 365 Outlook 的连接器操作 发送电子邮件

    • 如果你有个人 Microsoft 帐户,请添加名为 Outlook.com 的连接器操作 发送电子邮件

    此示例继续执行名为发送电子邮件Office 365 Outlook连接器操作。

    如果在工作流中使用其他受支持的电子邮件服务,用户界面可能会略有不同。 但是,用于连接到其他电子邮件服务的基本概念仍保持不变。

  2. 如果选择的电子邮件服务提示您登录并验证您的身份,请立即完成该步骤。

    许多连接器要求您首先创建连接并验证您的身份,然后才能继续。 此示例使用手动身份验证连接到Office 365 Outlook。 但其他服务可能支持或使用不同的身份验证类型。 可以根据场景以各种方式处理连接身份验证。

    有关详细信息,请参见:

  3. 在动作信息窗格中,提供以下信息以便包含在电子邮件中:

    1. 在“收件人”框中,输入收件人的电子邮件地址。 若要进行测试,请使用电子邮件地址。

      在“ To ”框或其他编辑框中选择时,将显示用于打开动态内容列表(闪电图标)或表达式编辑器(公式图标)的选项。 动态内容列表显示以前作的任何输出,你可以选择这些输出作为当前作的输入。 表达式编辑器允许使用函数和作输出来处理数据。 现在可以忽略这些选项。 后续步骤会使用动态内容列表。

    2. 在“主题”框中,输入电子邮件主题。

      对于此示例,请通过执行以下步骤,包括触发器的输出以显示 RSS 项的标题:

      1. 请输入以下带有尾随空格的文本:New RSS item:

      2. 当光标仍位于“主题”框中时,选择动态内容列表(闪电图标)

        屏幕截图显示了名为“发送电子邮件”的操作、名为“主题”的框中的光标,以及动态内容列表的已选择选项。

      3. 从打开的动态内容列表中,在发布源项时下选择源标题,这是引用 RSS 项标题的触发器输出。

        屏幕截图显示了名为“发送电子邮件”的操作,其中光标位于名为“主题”的框中。

        如果在“发布源项时”下没有可用的输出,请选择“查看更多”

        屏幕截图显示了打开的动态内容列表和所选择选项“查看详细信息”。

        完成后,电子邮件主题如以下示例所示:

        屏幕截图显示了名为“发送电子邮件”的操作,其中包含示例电子邮件主题和名为“Feed 标题”的属性。

        注意

        如果选择引用数组的输出,设计器会自动在引用该输出的操作周围添加“For each”循环。 这样,工作流将通过对数组中的每个项执行相同的操作来处理数组。

        要移除循环,请将子操作拖到循环外部,然后删除循环。

    3. 在“正文”框中,输入电子邮件内容

      对于此示例,请包括每一行的描述性文本,并跟上 RSS 触发器的相应输出。 若要在编辑框中添加空行,请按 Shift + Enter。

      说明性文本 属性 说明
      Title: 信息流标题 项目的标题。
      Date published: 发布时间 项目的发布日期和时间。
      Link: 源主链接 条目的 URL 地址。

      屏幕截图显示了名为“发送电子邮件”的操作,以及名为“正文”的框中的描述性文本和属性。

  4. 保存工作流。

测试工作流

若要确认工作流正常运行,请等待触发器触发或手动运行工作流。

  • 在设计器工具栏上,从“运行”菜单中选择“运行”

如果 RSS 源有新项,工作流会为每个新项发送一封电子邮件。 否则,工作流会等到下一个间隔再次检查 RSS 源。

以下屏幕截图显示了由示例工作流发送的示例电子邮件。 电子邮件包括所选的每个触发器输出的详细信息,以及每个项目所包含的说明性文本。

Screenshot 显示了 Outlook 和为新的 RSS 源项收到的示例电子邮件,以及项目标题、发布日期和链接。

排查问题

如果未按预期接收到来自工作流的电子邮件:

  • 请检查电子邮件帐户的垃圾邮件或垃圾邮箱,以防邮件被错误过滤。

  • 请确保您正在使用的 RSS 源自上次计划检查或手动检查以来发布的项目。

清理资源

完成此快速入门后,请通过删除为此示例创建的资源组来删除示例逻辑应用资源和所有相关资源。

  1. 在Azure搜索框中,输入资源组,然后选择资源组

    Screenshot 显示 Azure 门户搜索框,其中包含搜索词,资源组。

  2. 查找并选择逻辑应用的资源组。 在“概述”窗格上,选择“删除资源组”。

    Screenshot 显示 Azure 门户,其中选择了资源组,并包含“删除资源组”的按钮。

  3. 出现确认窗格时,输入资源组名称,然后选择“删除”。

    截图显示了 Azure 门户,其中有一个确认窗格,并输入了要删除的资源组名称。