使用Logic App监控Azure事件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用Logic App监控Azure事件相关的知识,希望对你有一定的参考价值。

Azure Logic Apps 是一种云服务,可在您需要跨企业或组织集成应用程序、数据、系统和服务时帮助您自动化和协调任务、业务流程和工作流。Logic Apps简化了您为应用程序集成,数据集成,系统集成,企业应用程序集成(EAI)和企业对企业(B2B)通信设计和构建可扩展解决方案的方式,无论是在云中,内部还是两者。

例如,以下是一些可以使用逻辑应用程序自动执行的工作负载:

  • 跨本地系统和云服务处理和路由订单。
  • 在各种系统,应用和服务中发生事件时,使用Office 365发送电子邮件通知。
  • 将上载的文件从SFTP或FTP服务器移动到Azure存储。
  • 监控特定主题的推文,分析情绪,并为需要审核的项目创建警报或任务。

要使用Azure Logic Apps构建企业集成解决方案,您可以从具有200多个连接器的不断增长的库中进行选择,其中包括Azure Service Bus,Functions和Storage等服务; SQL,Office 365,Dynamics,Salesforce,BizTalk,SAP,Oracle DB,文件共享等。连接器提供 触发器,操作或两者,用于创建实时安全访问和处理数据的逻辑应用程序。

为何使用Logic Apps?

随着企业向数字化方向发展,逻辑应用程序通过提供预先构建的API作为Microsoft管理的连接器,帮助您更轻松,更快速地连接传统,现代和尖端系统。这样,您就可以专注于应用程序的业务逻辑和功能。您不必担心构建,托管,扩展,管理,维护和监控应用程序。Logic Apps为您处理这些问题。此外,您只需根据消费定价模型支付使用费用 。

在许多情况下,您不必编写代码。但是,如果必须编写一些代码,则可以使用Azure Functions创建代码片段, 并根据逻辑应用程序的需要运行该代码。此外,如果您的逻辑应用程序需要与Azure服务,自定义应用程序或其他解决方案中的事件进行交互,则可以将Azure Event Grid 与逻辑应用程序一起用于事件监视,路由和发布。

逻辑应用程序,功能和事件网格完全由Microsoft Azure管理,使您免于担心构建,托管,扩展,管理,监视和维护解决方案。凭借创建“无服务器”应用程序和解决方案的能力,您可以专注于业务逻辑。这些服务可自动扩展以满足您的需求,加快集成速度,并帮助您使用最少的代码构建强大的云应用程序。此外,您只需根据消费定价模型支付所使用的费用 。

说了这么多,下面我们就来一起看下如何使用Logic App监控Azure事件。

点击“逻辑应用程序设计器”—“常用触发器”—“当事件网格资源事件发生时”:

使用Logic

点击登陆:

使用Logic

登陆成功,如下图所示:

使用Logic

选择Azure订阅,资源类型和资源名称。在此示例中,我选择了订阅,以便在整个订阅中进行事件监视,但您可以选择资源组或其他内容来进一步调整警报范围。我还为WriteSuccess添加了一个事件类型过滤器,但您可以再次根据您的要求进行调整:

使用Logic

在此示例中,我选择通过电子邮件通知,因此单击新步骤,然后选择Office 365 Outlook,然后发送电子邮件:

使用Logic

使用Logic

使用您感兴趣的事件信息填充电子邮件正文:

使用Logic

创建完成以后当我们删除某个Azure资源的时候会收到如下邮件通知:

使用Logic

 

使用变量值在 Azure Logic App 中设置 SQL 存储过程路径

【中文标题】使用变量值在 Azure Logic App 中设置 SQL 存储过程路径【英文标题】:Set SQL Stored Procedure path in Azure Logical App using a variable value 【发布时间】:2019-03-17 14:14:20 【问题描述】:

我大部分时间都在通过逻辑应用程序,但被困在下面的代码行上,该代码旨在插入从 ReportTabQuery 的上一步中解析的 json 所需的 sp 路径:

"path": "/datasets/default/procedures/@encodeURIComponent(encodeURIComponent('[dbo].[@body('ReportTabQuery')?['query']]'))"

错误如下:

无法解析模板语言表达式 'encodeURIComponent(encodeURIComponent('[dbo].[@body('ReportTabQuery')?['query']]'))': 预期的令牌“RightParenthesis”和实际的“标识符”。”。'。

我认为这是关于转义像这个问题here 这样的单引号,但我似乎无法解决。所有改变的是所需的令牌和位置值。到目前为止,我已经尝试过以下方法以及 concat() 等其他变体:

"path": "/datasets/default/procedures/@encodeURIComponent(encodeURIComponent('[dbo].[@body('ReportTabQuery')?['query']]'))"

"path": "/datasets/default/procedures/@encodeURIComponent(encodeURIComponent('[dbo].[@body('ReportTabQuery')?['query']]'))"

非常感谢任何帮助。非常感谢。

【问题讨论】:

【参考方案1】:

如果我正确理解了您要执行的操作,则需要将变量值连接到其他部分:

"path": "/datasets/default/procedures/@encodeURIComponent(encodeURIComponent(concat('[dbo].[', body('ReportTabQuery')?['query'], ']')))"

顺便说一句,我认为您不需要两次encodeURIComponent

"path": "/datasets/default/procedures/@encodeURIComponent(concat('[dbo].[', body('ReportTabQuery')?['query'], ']'))"

HTH

【讨论】:

嗨。谢谢你的回答。我现在要试试。

以上是关于使用Logic App监控Azure事件的主要内容,如果未能解决你的问题,请参考以下文章

我可以使用哪些操作通过 Azure Logic App 在 SharePoint Online 中创建文件夹?

在 Azure Logic App 中从 JSON 转换为 XML 时如何防止按字母排序

azure functions 或 azure logic app 中是不是有任何触发 Azure File Share 的触发器?

Azure Logic App“对于每个”循环不起作用

Azure Logic App Standard - 从未触发服务总线触发器

尝试在 Logic 应用中创建存储帐户时出现“无效资源”消息