练习 - 在虚拟机更改时发送电子邮件

已完成

你已经准备好基于接收已发布事件的逻辑应用执行操作。

在上一练习中,你完成了逻辑应用的初始设置。 现在,每当对资源组中的任何虚拟机进行更改后,都需要逻辑应用发送一封电子邮件通知,详细说明所做的更改。

在本练习中,你将了解如何设置这样一种条件,使逻辑应用可以检查已发布事件、使用逻辑应用操作进行响应以及发送电子邮件。

添加条件

首先,让我们创建一种在每次发布特定事件时都运行逻辑应用的条件。

  1. 在 Azure 门户中,创建的逻辑应用应处于活动状态。 如果没有,请选择“主页”,然后在“最近使用的资源”下,选择刚创建的逻辑应用。

  2. 在“逻辑应用”菜单中的“开发工具”下,选择“逻辑应用设计器”。 此时会显示你的逻辑应用的“逻辑应用设计器”窗格。

  3. 在事件网格中的“资源事件发生时”下,选择“新建步骤”。 此时会显示“选择操作”窗格。

    新逻辑应用步骤图标的屏幕截图。

  4. 在“搜索连接器和操作”搜索框中,输入“条件”作为筛选条件,然后按 Enter。 从结果中选择“控制”。 此时将显示“控制工作流”对话框。

  5. 在“操作”选项卡上,选择“条件”控件

    选择操作的条件的屏幕截图。

    逻辑应用设计器根据真或假条件,将空条件添加到工作流程中(包括要遵循的操作路径)。

    空条件的屏幕截图。

  6. 在“条件”标题栏中,选择省略号图标,然后在上下文菜单中选择“重命名”。 输入“如果资源组中的虚拟机已更改”。

    用于重命名条件的选择的屏幕截图。

  7. 在条件工作区中,选择“选择值”,然后选择“表达式”选项卡。

    用于选择表达式作为值的选择的屏幕截图。

  8. 在函数字段中,输入值 triggerBody()?['data']['operationName'],然后选择“确定”。

    数据操作的输入表达式的屏幕截图。

  9. 将中间框保留为“等于”,然后选择剩下的“选择值”框并输入值 Microsoft.Compute/virtualMachines/write

    已完成条件的屏幕截图。

  10. 在“逻辑应用设计器”命令栏中,选择“保存”。

注意

在命令栏中,选择“代码视图”以查看正在创建的操作的 JSON 文本。 选择“设计器”以返回到编辑器。

电子邮件通知

现在我们可以基于触发的逻辑应用添加电子邮件操作。 以下步骤使用 Office 365 Outlook。 如果没有 Office 365 帐户,可以使用 Outlook.com。 电子邮件程序的配置步骤可能有所不同,因此可能需要相应地进行调整。

  1. 在逻辑应用的“逻辑应用设计器”窗格中,在“当资源事件发生时”条件的“True”框中,选择“添加操作”。 此时会显示“选择操作”窗格。

    “添加操作”按钮的屏幕截图。

  2. 在“搜索连接器和操作”搜索框中,输入“发送电子邮件”作为筛选条件,然后选择“Office 365 Outlook”提供商。

  3. 在结果列表中,向下滚动并选择“发送电子邮件 (V2)”。

    用于发送电子邮件操作的选择的屏幕截图。

  4. 如果你还没有与你的电子邮件提供商建立连接,则系统可能会提示你登录到你的电子邮件帐户。 选择“登录”,并允许完成授权。

  5. 在操作的标题栏上,选择省略号,选择“重命名”,然后将“发送电子邮件 (V2)”操作重命名为“在虚拟机更新时发送电子邮件”

    在 VM 更新时发送电子邮件的屏幕截图。

  6. 在“收件人”字段中,添加你自己的电子邮件地址,用于在下一部分中测试工作流。

  7. 在“主题”字段中,键入“资源已更新”。 还可以将“动态内容”窗口中的字段拖动到此字段。

  8. 单击“正文”字段,在“动态内容”窗口中键入“主题:”,然后从“动态内容”弹出窗口中选择“主题”。

    如果你在“动态内容”窗口中看到以下消息,请选择“查看更多”以查看所有字段

    We can't find any outputs to match this input format. Select See more to see all outputs from previous actions.

    重复这些步骤以生成“正文”字段,如下图所示。

    电子邮件操作应类似于以下内容。 如果选择了其他电子邮件帐户类型(Outlook.com 或 Gmail),则输入可能会有所不同。

    电子邮件操作视图的屏幕截图。

  9. 完成的逻辑应用应类似于以下屏幕截图。

    已完成的逻辑应用的屏幕截图。

  10. 在命令栏中,选择“保存”以保存逻辑应用。

测试工作流

你已经创建并配置了一个逻辑应用,以侦听虚拟机事件并发送电子邮件通知。 事件详细信息将动态写入电子邮件正文中。

最后一步是测试完整的工作流。

  1. 在 Azure 门户顶部的搜索栏中,搜索 vm1 并在结果中选择虚拟机。 此时将显示“vm1”虚拟机窗格。

  2. 在左侧菜单窗格中,在“可用性 + 缩放”下,选择“大小”。

  3. 从列表中为虚拟机选择新的大小“DS2_v2”,然后选择“重设大小”。

  4. 再次选择“重设大小”以确认。

  5. 等待系统通知已重设虚拟机大小,以便生成和处理电子邮件。 几分钟后,应会收到一封类似如下的电子邮件:

    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