Tutorial: monitorar as alterações de máquinas virtuais usando a Grade de Eventos do Azure e os Aplicativos Lógicos do Azure

Aplica-se a: Aplicativos Lógicos do Azure (Consumo)

Você pode monitorar e responder a eventos específicos que ocorrem em recursos do Azure ou recursos externos usando Grade de Eventos do Azure e Aplicativos Lógicos do Azure. Você pode criar um fluxo de trabalho de aplicativo lógico de consumo automatizado com código mínimo usando os Aplicativos Lógicos do Azure. Você pode fazer esses recursos publicarem eventos na Grade de Eventos do Azure. Por sua vez, a Grade de Eventos do Azure envia os eventos aos assinantes com filas, webhooks, ou hubs de eventos como pontos de extremidade. Como assinante, o fluxo de trabalho aguarda esses eventos chegarem na Grade de Eventos do Azure para executar as etapas para processar os eventos.

Por exemplo, aqui estão alguns eventos que editores podem enviar aos assinantes por meio da Grade de Eventos do Azure:

  • Criar, ler, atualizar ou excluir um recurso. Por exemplo, você pode monitorar as alterações que podem incorrer em encargos na sua assinatura do Azure e afetar sua fatura.

  • Adicionar ou remover uma pessoa de uma assinatura do Azure.

  • Executar uma ação específica no seu aplicativo.

  • Exibir uma nova mensagem em uma fila.

Esse tutorial cria um recurso de aplicativo lógico de Consumo que é executado em Aplicativos Lógicos do Azuremultilocatário e se baseia no Modelo de preços de Consumo. Usando esse recurso de aplicativo lógico, você cria um fluxo de trabalho que monitora alterações em uma máquina virtual e envia emails sobre essas alterações. Ao criar um fluxo de trabalho com uma assinatura de evento de um recurso do Azure, os eventos são enviados desse recurso por meio da Grade de Eventos do Azure para o fluxo de trabalho.

Screenshot showing the workflow designer with a workflow that monitors a virtual machine using Azure Event Grid.

Neste tutorial, você aprenderá a:

  • Criar um recurso e fluxo de trabalho de aplicativo lógico que monitora os eventos da Grade de Eventos do Azure.
  • Adicionar uma condição que verifica especificamente se há alterações na máquina virtual.
  • Enviar email quando sua máquina virtual é alterada.

Pré-requisitos

Criar recurso de aplicativo lógico

  1. Entre no portal do Azure com sua conta do Azure.

  2. Na home page do Azure, selecione Criar um recurso>Integração>Aplicativo Lógico.

    Screenshot of Azure portal, showing button to create a logic app resource.

  3. Em Criar Aplicativo Lógico, forneça informações sobre seu recurso de aplicativo lógico.

    Screenshot of logic apps creation menu, showing details like name, subscription, resource group, and location.

    Propriedade Obrigatório Valor Descrição
    Assinatura Sim <Azure-subscription-name> Selecione a mesma assinatura do Azure para todos os serviços neste tutorial.
    Grupo de Recursos Sim <Azure-resource-group> O nome do grupo de recursos do Azure para seu aplicativo lógico, que você pode selecionar para todos os serviços neste tutorial.
    Nome do Aplicativo Lógico Sim <logic-app-name> Forneça um nome exclusivo para seu aplicativo lógico.
    Publicar Yes Fluxo de trabalho Selecione o destino de implantação para seu aplicativo lógico. Para este tutorial, selecione o Fluxo de trabalho que é implantado no Azure.
    Região Sim <Azure-region> Selecione a mesma região para todos os serviços neste tutorial.
    Tipo de plano Yes Consumo O tipo de recurso para seu aplicativo lógico. Antes de começar este tutorial, selecione Consumo.

    Observação

    Se posteriormente você quiser usar as operações da Grade de Eventos do Azure com um recurso de aplicativo lógico Standard, certifique-se de criar um fluxo de trabalho com estado, não um fluxo de trabalho sem estado. Este tutorial se aplica somente aos aplicativos lógicos de consumo, que seguem uma experiência diferente do usuário. Para adicionar operações da Grade de Eventos do Azure ao seu fluxo de trabalho no designer, no painel do seletor de operações selecione a guia Azure. Para obter mais informações sobre o modelo multilocatário dos Aplicativos Lógicos do Azure comparado ao de locatário único, confira Ambiente de serviços de integração de locatário único comparado a multilocatário.

  4. Quando terminar, selecione Review + create. No próximo painel, confirme as informações fornecidas e selecione Criar.

  5. Após o Azure implantar o aplicativo, selecione Ir para o recurso.

    O designer de fluxo de trabalho mostra uma página com um vídeo de introdução e os gatilhos normalmente usados.

  6. Role além da janela de vídeo e da seção de gatilhos usados com frequência.

  7. Em Modelos, selecione Aplicativo lógico em branco.

    Observação

    A galeria de modelos de fluxo de trabalho está disponível apenas para aplicativos lógicos de consumo, não para aplicativos lógicos Standard.

    Screenshot showing Azure Logic Apps templates with selected

    O designer de fluxo de trabalho agora mostra os gatilhos que você pode usar para iniciar seu aplicativo lógico. Cada fluxo de trabalho deve começar com um gatilho, que é disparado quando um evento específico ocorre ou quando uma condição específica é atendida. Sempre que o gatilho é acionado, os Aplicativos Lógicos do Azure criam uma instância de fluxo de trabalho que executa seu aplicativo lógico.

Adicionar um gatilho de Grade de Eventos do Azure

Agora, adicione o gatilho de Grade de Eventos do Azure que você usa para monitorar o grupo de recursos para sua máquina virtual.

  1. No designer, na caixa de pesquisa, insira event grid. Na lista de gatilhos, selecione o gatilho Quando um evento de recurso ocorre.

    Screenshot that shows the workflow designer with the selected Azure Event Grid trigger.

  2. Quando receber a solicitação, entre na Grade de Eventos do Azure com suas credenciais da conta do Azure. Na lista Locatário, que mostra o locatário do Microsoft Entra associado à sua assinatura do Azure, verifique se o locatário correto é exibido, por exemplo:

    Screenshot that shows the workflow designer with the Azure sign-in prompt to connect to Azure Event Grid.

    Observação

    Se você estiver conectado com uma conta pessoal da Microsoft, como @outlook.com ou @hotmail.com, talvez o gatilho da Grade de Eventos do Azure não apareça corretamente. Como alternativa, selecione Conectar-se à Entidade de Serviço ou autentique como membro do Microsoft Entra associado à sua assinatura do Azure, por exemplo, nome de usuário@emailoutlook.onmicrosoft.com.

  3. Agora, assine seu aplicativo lógico nos eventos do editor. Forneça os detalhes da assinatura de evento conforme especificado na tabela a seguir, por exemplo:

    Screenshot that shows the workflow designer with the trigger details editor open.

    Propriedade Obrigatório Valor Descrição
    Assinatura Sim <event-publisher-Azure-subscription-name> Selecione o nome da assinatura do Azure associada ao editor de eventos. Para este tutorial, selecione o nome da assinatura do Azure de sua máquina virtual.
    Tipo de recurso Sim <event-publisher-Azure-resource-type> Selecione o tipo de recurso do Azure para o editor de eventos. Para obter mais informações sobre os tipos de recursos do Azure, confira Provedores e tipos de recursos do Azure. Para este tutorial, selecione o valor Microsoft.Resources.ResourceGroups para monitorar grupos de recursos do Azure.
    Nome do recurso Sim <event-publisher-Azure-resource-name> Selecione o nome do recurso do Azure para o editor de eventos. Essa lista varia de acordo com o tipo de recurso que você selecionou. Para este tutorial, selecione o nome do grupo de recursos do Azure que inclui sua máquina virtual.
    Item do Tipo de Evento Não <event-types> Selecione um ou mais tipos de eventos específicos para filtrar e enviar para a Grade de Eventos do Azure. Por exemplo, você pode, opcionalmente, adicionar estes tipos de evento para detectar quando os recursos são alterados ou excluídos:

    - Microsoft.Resources.ResourceActionSuccess
    - Microsoft.Resources.ResourceDeleteSuccess
    - Microsoft.Resources.ResourceWriteSuccess

    Para saber mais, consulte esses tópicos:

    - Esquema de eventos para assinatura da Grade de Eventos do Azure
    - Compreender a filtragem de eventos
    - Filtrar eventos para a Grade de Eventos do Azure

    Para adicionar propriedades opcionais, selecione Adicionar novo parâmetro e, em seguida, selecione as propriedades desejadas. Não {consulte as descrições} * Filtro de prefixo: Para este tutorial, deixe esta propriedade vazia. O comportamento padrão corresponde a todos os valores. No entanto, você pode especificar uma cadeia de caracteres de prefixo como filtro, por exemplo, um caminho e um parâmetro para um recurso específico.

    * Filtro de sufixo: Para este tutorial, deixe esta propriedade vazia. O comportamento padrão corresponde a todos os valores. No entanto, você pode especificar uma cadeia de caracteres de sufixo como filtro, por exemplo, uma extensão de nome de arquivo, quando quiser tipos específicos de arquivo.

    * Nome da assinatura: Para este tutorial, é possível fornecer um nome exclusivo para a assinatura de evento.

  4. Salve o fluxo de trabalho do aplicativo lógico. Selecione Salvar na barra de ferramentas do designer. Para recolher e ocultar os detalhes de uma ação no seu fluxo de trabalho, selecione a barra de título da ação.

    Screenshot that shows the workflow designer and the

    Ao salvar seu fluxo de trabalho de aplicativo lógico com um gatilho de Grade de Eventos do Azure, o Azure cria automaticamente uma assinatura de evento para seu aplicativo lógico para o recurso selecionado. Portanto, quando o recurso publica um evento para o serviço de Grade de Eventos do Azure, o serviço envia o evento automaticamente para o seu aplicativo lógico. Esses gatilhos de evento e executa o fluxo de trabalho do aplicativo lógico definido nessas próximas etapas.

Seu aplicativo lógico já está ativo e escuta eventos da Grade de Eventos do Azure, mas não fará nada até que você adicione ações ao fluxo de trabalho.

Adicione uma condição

Se você quiser que o fluxo de trabalho do aplicativo lógico execute somente quando uma operação ou evento específico ocorrer, adicione uma condição que verifique a operação Microsoft.Compute/virtualMachines/write. Quando essa condição é verdadeira, o fluxo de trabalho do aplicativo lógico enviará um email, com detalhes sobre a máquina virtual atualizada.

  1. No designer de fluxo de trabalho, no gatilho de Grade de Eventos do Azure, selecione Nova etapa.

    Screenshot that shows the workflow designer with

  2. Em Escolher uma ação, na caixa de pesquisa, insira condition como o filtro. Na lista de ações, selecione a ação Condição.

    Screenshot that shows the workflow designer with

    O designer de fluxo de trabalho adiciona uma condição vazia ao seu fluxo de trabalho, incluindo caminhos de ação a seguir baseado no status da condição: verdadeira ou falsa.

    Screenshot that shows the workflow designer with an empty condition added to the workflow.

  3. Mude o nome o título da condição para If a virtual machine in your resource group has changed. Na barra de título da condição, selecione o botão de reticências ( ) e selecione Renomear.

    Screenshot that shows the workflow designer with the condition editor's context menu and

  4. Criar uma condição que verifique o evento body para um objeto data no qual a propriedade operationName é igual à operação Microsoft.Compute/virtualMachines/write. Saiba mais sobre o Esquema de eventos da Grade de Eventos do Azure.

    1. Na primeira linha em E, clique na caixa à esquerda. Na lista de conteúdo dinâmico que é exibida, selecione Expressão.

      Screenshot that shows the workflow designer with the condition action and dynamic content list open with

    2. No editor de expressão, insira esta expressão, que retorna o nome da operação do gatilho e seleciona OK:

      triggerBody()?['data']['operationName']

      Por exemplo:

      Screenshot showing workflow designer and condition editor with expression to extract the operation name.

    3. Na caixa do meio, mantenha o operador é igual a.

    4. Na caixa direita, insira a operação que deseja monitorar, que é o seguinte valor para este exemplo:

      Microsoft.Compute/virtualMachines/write

    Agora, sua condição concluída será semelhante a este exemplo:

    Screenshot that shows the workflow designer with a condition that compares the operation.

    Se você alternar do modo de exibição de Design para a exibição de código e de volta para o modo de exibição de Design, a expressão que você especificou na condição será resolvida para o token data.operationName:

    Screenshot that shows the workflow designer with a condition that has resolved tokens.

  5. Salve seu aplicativo lógico.

Enviar notificações por email

Agora, adicione uma ação para que você possa receber um email quando a condição for definida como verdadeira.

  1. Na caixa Se verdadeiro da condição, selecione Adicionar uma ação.

    Screenshot that shows the workflow designer with the condition's

  2. Em Escolher uma ação, na caixa de pesquisa, insira send an email como o filtro. Com base no seu provedor de email, localize e selecione o conector correspondente. Em seguida, selecione a ação "enviar email" para o conector. Por exemplo:

    • Por exemplo, se você tiver uma conta corporativa ou de estudante do Azure, selecione o conector Office 365 Outlook.

    • Para contas pessoais da Microsoft, selecione o conector do Outlook.com.

    • Para as contas do Gmail, selecione o conector do Gmail.

    Este tutorial continua com o conector do Outlook do Office 365. Se você usar outro provedor, as etapas serão as mesmas, mas a interface do usuário poderá ter uma aparência levemente diferente.

    Screenshot that shows the workflow designer with the search box open to find the

  3. Se você ainda não tiver uma conexão para o seu provedor de email, quando solicitado, acesse o seu e-mail para autenticação.

  4. Renomeie a ação de enviar email para este título: Send email when virtual machine updated

  5. Forneça detalhes para o email conforme especificado na tabela a seguir:

    Screenshot that shows the workflow designer with dynamic content being addded to email subject line for a true condition.

    Dica

    Para selecionar uma saída das etapas anteriores no seu fluxo de trabalho, clique dentro de uma caixa de edição de modo que a lista de conteúdos dinâmicos apareça ou selecione Adicionar conteúdo dinâmico. Para mais resultados, selecione Ver mais para cada seção na lista. Para fechar a lista de conteúdos dinâmicos, selecione Adicionar conteúdo dinâmico novamente.

    Propriedade Obrigatório Valor Descrição
    Para Sim <bcipient@domain> Insira o endereço de email do destinatário. Para fins de teste, você pode usar seu próprio endereço de email.
    Assunto Sim Resource updated:Assunto Insira o conteúdo do assunto do email. Para este tutorial, insira o texto especificado e selecione o campo Assunto do evento. Aqui, o assunto do email inclui o nome do recurso atualizado (máquina virtual).
    Corpo Sim Resource:Tópico

    Event type:Tipo de Evento

    Event ID:ID

    Time:Hora do evento

    Insira o conteúdo do corpo do email. Para este tutorial, insira o texto especificado e selecione os campos Tópico, Tipo de Evento, ID e Hora do Evento para que seu email inclua o recurso que disparou o evento, o tipo de evento, o carimbo de data/hora do evento e a ID do evento para a atualização. Para este tutorial, o recurso é o grupo de recursos do Azure selecionado no gatilho.

    Para adicionar linhas em branco em seu conteúdo, pressione Shift + Enter.

    Observação

    Se você selecionar um campo que representa uma matriz, o designer adiciona automaticamente um loop para cada em torno da ação que faz referência à matriz. Dessa forma, o fluxo de trabalho do aplicativo lógico executará essa ação em cada item da matriz.

    Agora, a ação do email pode parecer com este exemplo:

    Screenshot that shows the workflow designer with selected outputs to send in email when VM is updated.

    E o fluxo de trabalho do aplicativo lógico concluído pode parecer com este exemplo a seguir:

    Screenshot showing designer with complete workflow and details for trigger and actions.

  6. Salve seu aplicativo lógico. Para recolher e ocultar os detalhes de cada ação no seu aplicativo lógico, selecione a barra de título da ação.

    Seu aplicativo lógico já está ativo, mas aguardará as alterações na sua máquina virtual antes de realizar qualquer ação. Para testar o seu fluxo de trabalho agora, siga para a próxima seção.

Testar o fluxo de trabalho de seu aplicativo lógico

  1. Para verificar se o seu fluxo de trabalho está obtendo os eventos especificados, atualize sua máquina virtual.

    Por exemplo, você pode redimensionar sua máquina virtual.

    Você receberá um email em alguns instantes. Por exemplo:

    Screenshot of example Outlook email, showing details about VM update.

  2. Para examinar o histórico de gatilho e execução do seu aplicativo lógico, selecione Visão geral no menu do aplicativo lógico. Para exibir mais detalhes sobre uma execução, selecione a linha para essa execução.

    Screenshot of logic app's overview page, showing a successful run selected.

  3. Para exibir as entradas e saídas de cada etapa, expanda a etapa que você deseja examinar. Essas informações podem ajudar você a diagnosticar e depurar problemas em seu aplicativo lógico.

    Screenshot of logic app's runs history, showing details for each run.

Parabéns, você acabou de criar e executar um fluxo de trabalho de aplicativo lógico que monitora eventos de recursos por meio da Grade de Eventos do Azure e envio de emails para notificar o acontecimento de tais eventos. Você também aprendeu como é fácil criar fluxos de trabalho que automatizam processos e integram sistemas e serviços de nuvem.

Você pode monitorar outras alterações de configuração com grades de eventos e aplicativos lógicos, como por exemplo:

  • Uma máquina virtual obtém direitos do Azure RBAC (controle de acesso baseado em função do Azure).
  • As alterações são feitas em um grupo de segurança de rede (NSG) em um adaptador de rede (NIC).
  • Discos para uma máquina virtual são adicionados ou removidos.
  • Um endereço IP público é atribuído a uma máquina virtual NIC.

Limpar os recursos

Este tutorial usa recursos e executa ações que geram encargos na sua assinatura do Azure. Ao concluir o tutorial e testar, confira se desabilitou ou excluiu todos os recursos que você não deseja para evitar encargos.

  • Para interromper a execução do seu fluxo de trabalho sem excluir o seu trabalho, desabilite o aplicativo. No menu do aplicativo lógico, selecione Visão geral. Na barra de ferramentas, selecione Desabilitar.

    Screenshot of logic app's overview, showing Disable button selected to disable the logic app.

    Dica

    Se o menu do aplicativo lógico não aparecer, tente retornar ao painel do Azure e abra novamente o aplicativo lógico.

  • Para excluir seu aplicativo permanentemente, selecione Visão geral no menu do aplicativo lógico. Na barra de ferramentas, selecione Excluir. Confirme que você deseja excluir o aplicativo lógico e selecione Excluir.

Próximas etapas

Confira os exemplos a seguir para saber mais sobre como publicar e consumir eventos na Grade de Eventos do Azure usando diferentes linguagens de programação.