Azure Logic Apps通过为 Azure 服务、Microsoft服务、GitHub、SQL Server、SAP、Salesforce 等提供1,400 多个预构建和现成可用的连接器来帮助编排和集成不同的服务、系统、应用和数据。 Azure Logic Apps是一个“无服务器”集成平台,这意味着无需提供自己的基础结构,也不需要管理应用程序实例的缩放。 可以将精力和精力集中在设计集成解决方案的逻辑和构建自动化工作流上。 平台处理缩放、可用性和性能。 Azure Logic Apps特别适用于需要跨多个系统和服务协调作的用例和方案。
为了帮助你了解Azure Logic Apps支持的功能和模式,本指南介绍常见的起点、示例和方案。
逻辑应用工作流的常用起点
每个工作流都以触发器开头,该 触发器在指定计划或满足触发器条件时触发。 触发器被触发时,后续操作在工作流中运行,并将任何触发器输出传递给这些操作。 许多连接器提供具有以下类型之一的触发器:
轮询 触发器:根据指定的计划,此触发器会检查终结点中是否存在满足触发器条件的数据或事件。 如果满足触发器条件,触发器将触发、创建并运行新的工作流实例。 任何触发器的输出都作为输入传递到工作流中的第一个操作。
推送触发器:此触发器等待满足触发条件的事件在指定终结点发生。 例如,事件可能包括:接收在终结点位置创建或更新的请求、消息或文件。 发生此事件时,触发器会触发、创建并运行新的工作流实例。 任何触发器的输出都作为输入传递到工作流中的第一个操作。
轮询触发器示例
| 触发器 | 说明 | 详细信息 |
|---|---|---|
| 循环触发器 | 设置运行工作流的重复周期,包括开始日期和时间。 例如,可以选择星期几和一天中的某个时间。 |
-
计划并运行定期自动化任务、进程和工作流,使用 Azure Logic Apps |
| 收到电子邮件时 | 检查Azure Logic Apps支持的任何邮件提供商的新电子邮件,例如,Office 365 Outlook、Outlook.com 等。 | - 教程:使用 Azure Logic Apps、Azure Functions 和 Azure Storage 自动化处理电子邮件的任务 |
| HTTP 触发器 | 通过 HTTP 或 HTTPS 调用服务终结点。 | 使用 HTTP 终结点调用、触发或嵌套工作流 |
推送触发器示例
| 触发器 | 说明 |
|---|---|
| 请求触发器 | 接收传入的 HTTPS 请求。 |
| HTTP Webhook 触发器 | 通过向该服务注册回叫 URL 来订阅服务端点。 这样一来,服务可只在指定事件发生时通知触发器,触发器便无需轮询服务。 |
添加触发器后,请通过添加一个或多个操作来继续构建工作流。 以下指南帮助你构建第一个消费逻辑应用工作流,该工作流在 Azure Logic Apps 全球多租户环境中运行:
以下指南可帮助您构建在单租户 Azure Logic Apps 中运行的标准的逻辑应用程序工作流:
- 在 Azure portal 中为单租户 Azure Logic Apps 创建标准工作流的示例
- 使用 Visual Studio Code 在单租户Azure Logic Apps中创建标准工作流示例
迁移到Azure Logic Apps
控制流和错误处理功能
Azure Logic Apps包括高级控制流(例如条件、开关、循环和作用域)的丰富功能。 若要确保解决方案具有弹性,还可以在工作流中实现错误和异常处理。
- 基于条件语句和选择语句执行不同操作
- 使用循环重复执行步骤或处理数组和集合中的项
- 向工作流添加错误和异常处理
从工作流运行代码
- 在工作流中添加和运行 JavaScript 代码片段
- 调用 Azure Functions 的工作流
- 从标准工作流创建并运行.NET代码
- 从标准工作流创建和运行 C# 脚本
- 从标准工作流创建和运行 PowerShell 脚本
保护工作流
可靠性
- Azure Logic Apps 中的可靠性
- 为逻辑应用启用区域冗余
为 Azure Logic Apps
处理内容类型、转换和变换
你可以使用 Azure Logic Apps workflow 定义语言中的多个函数来访问、转换和变换多种内容类型。 例如,可以使用 @json() 和 @xml() 工作流表达式在字符串、JSON 和 XML 之间转换。 Azure Logic Apps保留内容类型,以支持服务之间以无损失的方式传输内容。
- 处理 Azure Logic Apps 中的内容类型,例如
application/,application/octet-stream, 和multipart/formdata - Azure Logic Apps 和 Power Automate 中表达式函数的引用指南
- 用于 Azure Logic Apps 的工作流定义语言架构
创建自定义 API 和连接器
对于没有已发布连接器的系统和服务,还可以扩展Azure Logic Apps以创建自定义 API 和连接器:
- 创建可从 Azure Logic Apps 调用的自定义 API
- Azure Logic Apps 中的自定义连接器
构建企业对企业 (B2B) 解决方案
对于企业集成解决方案和组织之间的无缝通信,可以通过将 Enterprise Integration Pack (EIP) 与 Azure Logic Apps 结合使用,为这些方案构建自动化的可缩放工作流。 尽管组织使用不同的协议和格式,但它们可以通过电子方式交换消息。 EIP 会将不同的格式转换为组织的系统可以处理的格式,并支持 AS2、X12、EDIFACT 和 RosettaNet 等行业标准协议。 若要生成这些解决方案,请创建一个集成帐户,该帐户是一个单独的Azure资源,它为定义和使用逻辑应用工作流的artifacts提供安全、可缩放且可管理的容器。 例如,构件包括贸易合作伙伴、协议、映射、模式、证书和批处理配置。
- 概览:使用 Azure Logic Apps 和企业集成包的 B2B 企业集成解决方案
在 Azure Logic Apps 中为 B2B 企业集成创建和管理集成帐户
部署、管理和监视逻辑应用工作流
可以使用 Azure DevOps 或任何其他源代码管理和自动化生成工具完全开发和部署逻辑应用资源。 为了支持在资源模板中部署工作流和依赖连接,逻辑应用资源使用Azure资源部署模板。 对于工作流运行状态的通知和诊断日志,Azure Logic Apps还提供监视和警报。
部署
- 使用 Azure DevOps 自动化标准逻辑应用的构建和部署
- Overview:使用 Azure Resource Manager 模板自动执行逻辑应用部署
- 创建Azure Resource Manager模板以自动部署 Azure Logic Apps
- 使用 Azure Resource Manager 模板部署 Azure Logic Apps
- 示例:为 Azure Logic Apps 设置 API 管理操作
- Sample:通过 Azure Logic Apps 协调 Azure Pipelines
- Sample:从 Azure Logic Apps 连接到 Azure Storage 帐户,并在 Azure DevOps 中使用Azure Pipelines进行部署
- Sample:从Azure Logic Apps连接到Azure Service Bus队列,并在 Azure DevOps 中使用Azure Pipelines进行部署
- 示例:在 Azure DevOps 中使用 Azure Pipelines 设置 Azure Logic Apps 的 Azure Functions 操作并进行部署
- Sample:从 Azure Logic Apps 连接到集成帐户,并在 Azure DevOps 中使用 Azure Pipelines进行部署
管理
- 计划和管理成本
在 Azure 门户中管理逻辑应用 - Visual Studio Code 中管理逻辑应用
- 创建和管理 B2B 企业集成的集成帐户
- 将逻辑应用资源移动到其他Azure资源组、区域或订阅
显示器
监视消耗型工作流
监视标准工作流
其他集成和功能
Azure Logic Apps与许多服务(例如Azure API Management、Azure App Service和自定义 HTTP 终结点)集成,例如 REST 和 SOAP。
Tutorial:使用 Power BI 和 Azure Logic Apps - 教程:使用 Azure Logic Apps 将 IoT 中心和邮箱连接起来,实现 IoT 的远程监控和通知
博客:使用 Azure Logic Apps 调用 SOAP 服务
端到端场景
白皮书:端到端案例管理解决方案与 Azure 服务(例如 Azure Logic Apps)集成
客户案例
了解Azure Logic Apps以及其他Azure服务和Microsoft产品如何帮助公司通过简化、组织、自动化和协调复杂流程来提高灵活性并专注于核心业务。