Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
适用于:Azure 逻辑应用 (消耗)
作为集成开发人员,通常需要跨 SaaS 应用、企业系统和数据源自动执行业务流程,而无需管理基础结构。 你还需要一种代码优先的方式来生成工作流,以便你可以有效地版本定义、进行更新和查看更改。
本快速入门介绍如何使用 Visual Studio Code 中的本地代码优先工具在多租户Azure 逻辑应用中创建和管理消耗工作流。 消耗工作流为事件驱动工作流和计划工作流提供无服务器集成模型,因此你可以连接服务和自动化进程,同时仅为运行的操作付费。
在Visual Studio Code中,可以使用代码编辑器在 JavaScript 对象表示法(JSON)中编辑工作流定义,根据需要使用可视化设计器,并在Azure中管理已部署的工作流。 还可以从运行Visual Studio Code的任何开发平台(例如 Linux、Windows 和 macOS)处理工作流和集成帐户。
以下屏幕截图显示了消耗工作流定义示例的外观:
有关详细信息,请参见:
先决条件
Azure 帐户和订阅。 获取Azure帐户。
基本了解 逻辑应用工作流定义 及其 JSON 格式的结构。
本文中的示例创建与本 快速入门 中相同的逻辑应用工作流,重点介绍基本概念。 还可以通过 Azure CLI 学习创建和管理工作流。
访问 Web 以登录到Azure和Azure订阅。
如果还没有这些工具,请下载并安装以下工具:
Visual Studio Code 的 Azure 逻辑应用(Consumption)扩展。
从 Visual Studio Marketplace 或直接从Visual Studio Code内部安装此扩展。
安装后重新加载Visual Studio Code。
有关详细信息,请参阅扩展市场。 想参与此扩展的开源版本,请访问 GitHub 上的 Visual Studio Code Azure 逻辑应用 扩展。
如果您的逻辑应用工作流需要通过限制特定 IP 地址流量的防火墙进行通信,则该防火墙必须允许访问 Azure 逻辑应用 或逻辑应用工作流所在 Azure 区域中运行时使用的所有 IP 地址,包括入站和出站地址。
如果逻辑应用工作流还使用 托管连接器,例如 Office 365 Outlook 连接器或 SQL 连接器,或者使用 自定义连接器,防火墙必须允许逻辑应用所在 Azure 区域的 所有托管连接器出站 IP 地址的访问。
从Visual Studio Code访问Azure
在 Visual Studio Code 中,登录到Azure帐户。
如果登录花费的时间比平常长,Visual Studio Code会提示你通过Microsoft身份验证网站登录,并提供设备代码。 若要改用代码登录,请执行以下步骤:
选择 “使用设备代码”,然后选择“ 复制并打开”。
选择 “打开链接 ”以打开新的浏览器窗口,并继续访问身份验证网站。
在“登录到你的帐户”页上,输入验证码,然后选择“下一步” 。
在“活动”栏上,选择Azure图标。
在Azure窗格中,Logic Apps (Consumption) 和 Integration Accounts 部分现在显示与帐户关联的Azure订阅。 如果未看到所需的订阅,或者这些部分显示过多的订阅,请执行以下步骤:
在 “逻辑应用(消耗)” 部分中, 选择“选择订阅”。
从订阅列表中,选择要使用的订阅。
在 “逻辑应用(消耗)” 部分中,展开订阅以查看该订阅中部署的任何逻辑应用。
创建逻辑应用
在 Visual Studio Code 中,在 Logic Apps (Consumption) 部分中,从订阅快捷菜单中选择创建逻辑应用。
此时会显示一个列表,并显示订阅中的任何Azure资源组。
在资源组列表中,选择“ 创建新资源组 ”或“现有资源组”。
对于此示例,请选择“ 创建新资源组”,例如:
输入Azure资源组的名称。
选择要在其中保存逻辑应用元数据的Azure区域。
输入逻辑应用的名称。
在 Azure 窗口中,在您的 Azure 订阅下,会出现您的新逻辑应用和空工作流。 Visual Studio Code还会打开 JSON(.logicapp.json)文件,该文件包括主干工作流定义,例如:
现在可以开始在此 JSON 文件中手动创作工作流定义。 有关工作流定义的结构和语法的技术参考,请参阅 Azure 逻辑应用 的Workflow 定义语言架构。
以下示例逻辑应用工作流定义以 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": {} }完成后,保存工作流定义。 (文件)>保存 或按 Ctrl+S)。
当系统提示将逻辑应用工作流定义上传到Azure订阅时,请选择 Upload。
此步骤将逻辑应用工作流定义从 Visual Studio Code 发布到 Azure 门户,使工作流在Azure中实时运行。
在设计器中查看工作流
在Visual Studio Code中,可以在只读设计视图中打开逻辑应用工作流。 虽然无法在设计器中编辑工作流定义,但可以使用设计器视图直观地检查工作流。
在 Azure 窗口中,在 Logic Apps (Consumption) 部分中,从逻辑应用快捷菜单中选择 Open in Designer。
只读设计器将在单独的选项卡中打开,并显示逻辑应用工作流,例如:
在 Azure 门户中查看工作流
若要在 Azure 门户中查看逻辑应用工作流定义,请执行以下步骤:
在 Azure 门户,使用与逻辑应用关联的同一Azure帐户和订阅登录。
在Azure门户搜索框中,输入逻辑应用名称。 从结果列表中选择逻辑应用。
在逻辑应用边栏上的 “开发工具”下,在设计器或代码视图中打开工作流。
编辑已部署的逻辑应用
在Visual Studio Code中,可以在Azure中打开和编辑已部署的逻辑应用资源的工作流定义。
重要
在生产中编辑主动运行的逻辑应用工作流之前,请先 禁用逻辑应用资源,尽量减少中断并避免中断工作流的风险。
在Visual Studio Code,在活动栏上,选择Azure图标。
在Azure窗口中,在 Logic Apps (Consumption) 部分中,展开Azure订阅,然后选择所需的逻辑应用。
在逻辑应用快捷菜单中,选择“ 在编辑器中打开”。 或者,在逻辑应用名称旁边,选择编辑图标。
Visual Studio Code打开本地临时文件夹中的 .logicapp.json 文件,以便查看工作流定义。
在工作流定义文件中进行更改。
完成后,保存更改(文件>保存 或按 Ctrl+S)。
当系统提示在 Azure 门户中上传更改并overwrite现有逻辑应用工作流时,请选择 Upload。
此步骤会将您的更新发布到 Azure 门户中的逻辑应用程序资源。
查看或推广其他版本
在Visual Studio Code中,可以打开并查看逻辑应用工作流的早期版本。 还可以将早期版本提升到当前版本。
重要
在对生产环境中正在运行的逻辑应用工作流进行更改之前,首先禁用逻辑应用资源,以尽量减少中断并避免破坏该逻辑应用的风险。
在Azure窗口中,在 Logic Apps (Consumption) 部分中,展开Azure订阅以查看关联的逻辑应用。
在您的订阅下,展开您的逻辑应用,然后展开“版本”。
“版本”列表显示逻辑应用的早期版本(如果有)。
若要查看早期版本,请选择以下步骤之一:
若要查看 JSON 定义,请在“版本”下选择该定义的版本号。 或者,在版本快捷菜单中,选择 “在编辑器中打开”。
将在本地计算机上打开一个新文件,并显示该版本的 JSON 定义。
若要查看只读设计器中的版本,请从版本的快捷菜单中选择“ 在设计器中打开”。
若要将早期版本提升到当前版本,请执行以下步骤:
在 “版本”下,从早期版本的快捷菜单中,选择“ 提升”。
若要在Visual Studio Code提示确认后继续,请选择 Yes。
Visual Studio Code将所选版本提升为当前版本,并将新编号分配给升级的版本。 原当前版本现在显示在提升后的版本之下。
禁用或启用逻辑应用
在 Visual Studio Code 中,如果编辑已发布的逻辑应用工作流并保存更改,您将会覆盖已部署的逻辑应用。 为了避免在生产环境中中断逻辑应用工作流并最大程度地减少中断,请先禁用逻辑应用资源。 确认工作流仍按预期工作后,可以重新激活逻辑应用资源。
禁用或启用逻辑应用资源会通过以下方式影响工作流实例:
Azure 逻辑应用会继续运行正在进行和待定的工作流,直到它们完成。 根据工作量或积压,此过程可能需要一些时间才能完成。
Azure 逻辑应用不会创建或运行新的工作流实例。
触发器不会在下一次满足其条件时触发。
触发器状态会记住工作流停止的点。 因此,如果重新激活逻辑应用程序,触发器将启动运行,以处理自上次运行以来尚未处理的任何项。
若要阻止触发器对这些未处理的项触发,请在重新激活逻辑应用资源之前清除触发器状态:
- 在工作流中,编辑触发器的任何部分。
- 保存所做更改。 此步骤会重置触发器的当前状态。
- 重新激活逻辑应用资源。
禁用逻辑应用资源后,仍可以重新提交工作流运行。
若要在Visual Studio Code中禁用或启用逻辑应用资源,请执行以下步骤:
在Visual Studio Code中,打开Azure窗口。
在 Logic Apps(Consumption) 部分中,将 Azure 订阅展开以便于查看关联的逻辑应用。
若要禁用逻辑应用资源,请在逻辑应用快捷菜单中选择“ 禁用”。
准备好重新激活逻辑应用资源时,从逻辑应用快捷菜单中,选择“ 启用”。
删除逻辑应用
删除逻辑应用会以下列方式方式影响工作流实例:
Azure 逻辑应用尝试取消任何正在进行的和挂起的工作流运行。
即使有大量的任务数量或积压工作 (backlog),大多数运行任务在完成或开始之前都将被取消。 但是,取消过程可能需要一些时间才能完成。 同时,服务可能会在处理取消流程的同时拾取一些任务进行执行。
Azure 逻辑应用不会创建或运行新的工作流实例。
如果删除工作流,然后重新创建相同的工作流,则重新创建的工作流具有不同的元数据。 任何调用已删除工作流的工作流都需要重新保存。 重新保存时,调用方将获取重新创建的工作流的正确信息。 否则,对重新创建的工作流的调用将失败并显示
Unauthorized错误。 此行为同样适用于在集成帐户中使用工件的工作流,以及调用 Azure 函数的工作流。
若要从Visual Studio Code中删除逻辑应用资源,请执行以下步骤:
在Visual Studio Code中,打开Azure窗口。
在 Logic Apps(Consumption) 部分中,展开 Azure 订阅以查看关联的逻辑应用资源。 查找要删除的逻辑应用资源。
从逻辑应用快捷菜单中,选择“ 删除”。