练习 - 在虚拟机更改时发送电子邮件
你已经准备好基于接收已发布事件的逻辑应用执行操作。
在上一练习中,你完成了逻辑应用的初始设置。 现在,每当对资源组中的任何虚拟机进行更改后,都需要逻辑应用发送一封电子邮件通知,详细说明所做的更改。
在本练习中,你将了解如何设置这样一种条件,使逻辑应用可以检查已发布事件、使用逻辑应用操作进行响应以及发送电子邮件。
添加条件
首先,让我们创建一种在每次发布特定事件时都运行逻辑应用的条件。
在 Azure 门户中,创建的逻辑应用应处于活动状态。 如果没有,请选择“主页”,然后在“最近使用的资源”下,选择刚创建的逻辑应用。
在“逻辑应用”菜单中的“开发工具”下,选择“逻辑应用设计器”。 此时会显示你的逻辑应用的“逻辑应用设计器”窗格。
在事件网格中的“资源事件发生时”下,选择“新建步骤”。 此时会显示“选择操作”窗格。
在“搜索连接器和操作”搜索框中,输入“条件”作为筛选条件,然后按 Enter。 从结果中选择“控制”。 此时将显示“控制工作流”对话框。
在“操作”选项卡上,选择“条件”控件。
逻辑应用设计器根据真或假条件,将空条件添加到工作流程中(包括要遵循的操作路径)。
在“条件”标题栏中,选择省略号图标,然后在上下文菜单中选择“重命名”。 输入“如果资源组中的虚拟机已更改”。
在条件工作区中,选择“选择值”,然后选择“表达式”选项卡。
在函数字段中,输入值
triggerBody()?['data']['operationName']
,然后选择“确定”。将中间框保留为“等于”,然后选择剩下的“选择值”框并输入值
Microsoft.Compute/virtualMachines/write
。在“逻辑应用设计器”命令栏中,选择“保存”。
注意
在命令栏中,选择“代码视图”以查看正在创建的操作的 JSON 文本。 选择“设计器”以返回到编辑器。
电子邮件通知
现在我们可以基于触发的逻辑应用添加电子邮件操作。 以下步骤使用 Office 365 Outlook。 如果没有 Office 365 帐户,可以使用 Outlook.com。 电子邮件程序的配置步骤可能有所不同,因此可能需要相应地进行调整。
在逻辑应用的“逻辑应用设计器”窗格中,在“当资源事件发生时”条件的“True”框中,选择“添加操作”。 此时会显示“选择操作”窗格。
在“搜索连接器和操作”搜索框中,输入“发送电子邮件”作为筛选条件,然后选择“Office 365 Outlook”提供商。
在结果列表中,向下滚动并选择“发送电子邮件 (V2)”。
如果你还没有与你的电子邮件提供商建立连接,则系统可能会提示你登录到你的电子邮件帐户。 选择“登录”,并允许完成授权。
在操作的标题栏上,选择省略号,选择“重命名”,然后将“发送电子邮件 (V2)”操作重命名为“在虚拟机更新时发送电子邮件”。
在“收件人”字段中,添加你自己的电子邮件地址,用于在下一部分中测试工作流。
在“主题”字段中,键入“资源已更新”。 还可以将“动态内容”窗口中的字段拖动到此字段。
单击“正文”字段,在“动态内容”窗口中键入“主题:”,然后从“动态内容”弹出窗口中选择“主题”。
如果你在“动态内容”窗口中看到以下消息,请选择“查看更多”以查看所有字段。
We can't find any outputs to match this input format. Select See more to see all outputs from previous actions.
重复这些步骤以生成“正文”字段,如下图所示。
电子邮件操作应类似于以下内容。 如果选择了其他电子邮件帐户类型(Outlook.com 或 Gmail),则输入可能会有所不同。
完成的逻辑应用应类似于以下屏幕截图。
在命令栏中,选择“保存”以保存逻辑应用。
测试工作流
你已经创建并配置了一个逻辑应用,以侦听虚拟机事件并发送电子邮件通知。 事件详细信息将动态写入电子邮件正文中。
最后一步是测试完整的工作流。
在 Azure 门户顶部的搜索栏中,搜索 vm1 并在结果中选择虚拟机。 此时将显示“vm1”虚拟机窗格。
在左侧菜单窗格中,在“可用性 + 缩放”下,选择“大小”。
从列表中为虚拟机选择新的大小“DS2_v2”,然后选择“重设大小”。
再次选择“重设大小”以确认。
等待系统通知已重设虚拟机大小,以便生成和处理电子邮件。 几分钟后,应会收到一封类似如下的电子邮件:
Subject: /subscriptions/0000000000-0000-0000-0000-0000000000000/resourcegroups/learn-8b04c19e-f5ab-4567-80cb-a4a1e257d6dd/providers/Microsoft.Compute/virtualMachines/vm1 Resource: /subscriptions/0000000000-0000-0000-0000-0000000000000/resourcegroups/learn-8b04c19e-f5ab-4567-80cb-a4a1e257d6dd Event type: Microsoft.Resources.ResourceWriteSuccess Event ID: f917484e-eb07-428c-9a54-5c2e819a9eaf Time: 2021-12-10T03:59:18.7494126Z