Tutorial: Monitorar alterações de máquina virtual 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 acontecem em recursos do Azure ou recursos externos usando a Grade de Eventos do Azure e os Aplicativos Lógicos do Azure. Você pode criar um fluxo de trabalho automatizado do aplicativo lógico de consumo com código mínimo usando os Aplicativos Lógicos do Azure. Você pode fazer com que esses recursos publiquem eventos na Grade de Eventos do Azure. Por sua vez, a Grade de Eventos do Azure envia esses eventos para assinantes que têm filas, webhooks ou hubs de eventos como pontos de extremidade. Como assinante, seu fluxo de trabalho aguarda que esses eventos cheguem à Grade de Eventos do Azure antes de executar as etapas para processar os eventos.

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

  • Criar, ler, atualizar ou eliminar um recurso. Por exemplo, pode monitorizar as alterações que possam implicar custos na sua subscrição do Azure e afetam a fatura.

  • Adicionar ou remover uma pessoa de uma subscrição do Azure.

  • A aplicação executa uma ação específica.

  • É apresentada uma nova mensagem numa fila.

Este tutorial cria um recurso de aplicativo lógico de consumo que é executado em aplicativos lógicos do Azure multilocatários 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 as alterações em uma máquina virtual e envia e-mails sobre essas alterações. Quando você cria um fluxo de trabalho que tem uma assinatura de evento para um recurso do Azure, os eventos fluem 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, irá aprender a:

  • Crie um recurso de aplicativo lógico e fluxo de trabalho que monitore eventos da Grade de Eventos do Azure.
  • Adicionar uma condição que verifica especificamente a existência de alterações de máquina virtual.
  • Enviar um e-mail quando a máquina virtual for alterada.

Pré-requisitos

Criar recurso de aplicativo lógico

  1. Inicie sessão no portal do Azure com a sua conta do Azure.

  2. Na home page do Azure, selecione Criar um aplicativo lógico de integração>de recursos.>

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

  3. Em Criar Aplicativo Lógico, forneça informações sobre o recurso do aplicativo lógico:

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

    Propriedade Necessário Valor Description
    Subscrição Sim <Azure-subscrição-nome> 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 da Aplicação Lógica Sim <logic-app-name> Forneça um nome exclusivo para seu aplicativo lógico.
    Publicar Sim Fluxo de Trabalho Selecione o destino de implantação para seu aplicativo lógico. Para este tutorial, certifique-se de selecionar Fluxo de trabalho, que implanta no Azure.
    Região Sim <Azure-region> Selecione a mesma região para todos os serviços neste tutorial.
    Tipo de plano Sim Consumo O tipo de recurso para seu aplicativo lógico. Para este tutorial, certifique-se de selecionar Consumo.

    Nota

    Se, mais tarde, você quiser usar as operações da Grade de Eventos do Azure com um recurso de aplicativo lógico Padrão, certifique-se de criar um fluxo de trabalho com monitoração de estado, não um fluxo de trabalho sem monitoração de estado. Este tutorial aplica-se apenas a aplicações lógicas de consumo, que seguem uma experiência de utilizador diferente. Para adicionar operações da Grade de Eventos do Azure ao seu fluxo de trabalho no designer, no painel do seletor de operações, certifique-se de selecionar a guia Azure . Para obter mais informações sobre os Aplicativos Lógicos do Azure multilocatário versus locatário único, consulte Single-tenant versus multitenant e ambiente de serviço de integração.

  4. Quando terminar, selecione Rever + criar. No painel seguinte, confirme as informações fornecidas e selecione Criar.

  5. Depois que o Azure implantar seu aplicativo lógico, selecione Ir para recurso.

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

  6. Passe pela janela de vídeo e pela seção de gatilhos comumente usados.

  7. Em Modelos, selecione Aplicação Lógica em Branco.

    Nota

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

    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. Todo fluxo de trabalho deve começar com um gatilho, que é acionado quando um evento específico acontece 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, digite event grid. Na lista de gatilhos, selecione o gatilho Quando ocorre um evento de recurso.

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

  2. Quando solicitado, entre na Grade de Eventos do Azure com suas credenciais de conta do Azure. Na lista Locatários, que mostra o locatário do Microsoft Entra associado à sua assinatura do Azure, verifique se o locatário correto aparece, por exemplo:

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

    Nota

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

  3. Agora inscreva seu aplicativo lógico em eventos do editor. Forneça os detalhes sobre sua assinatura de evento conforme descrito na tabela a seguir, por exemplo:

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

    Propriedade Necessário Valor Description
    Subscrição 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 para 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, consulte Provedores e tipos de recursos do Azure. Para este tutorial, selecione o valor para monitorar os Microsoft.Resources.ResourceGroups 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 selecionado. Para este tutorial, selecione o nome do grupo de recursos do Azure que inclui sua máquina virtual.
    Item de tipo de evento Não <tipos de eventos> Selecione um ou mais tipos de evento específicos para filtrar e enviar para a Grade de Eventos do Azure. Por exemplo, opcionalmente, você pode adicionar esses tipos de evento para detetar quando os recursos são alterados ou excluídos:

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

    Para obter mais informações, consulte estes tópicos:

    - Esquema de eventos da Grade de Eventos do Azure para grupos de recursos
    - 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 {see descriptions} * Filtro de prefixo: Para este tutorial, deixe esta propriedade vazia. O comportamento predefinido corresponde a todos os valores. No entanto, pode especificar uma cadeia 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 predefinido corresponde a todos os valores. No entanto, pode especificar uma cadeia de sufixo como filtro, por exemplo, uma extensão de nome de ficheiro, quando quiser apenas tipos de ficheiro específicos.

    * Nome da assinatura: para este tutorial, você pode fornecer um nome exclusivo para sua assinatura do evento.

  4. Salve seu fluxo de trabalho de aplicativo lógico. Na barra de ferramentas do estruturador, selecione Guardar. 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

    Quando você salva 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 no recurso selecionado. Portanto, quando o recurso publica um evento no serviço de Grade de Eventos do Azure, o serviço envia automaticamente o evento para seu aplicativo lógico. Esse evento aciona e executa o fluxo de trabalho do aplicativo lógico definido nestas próximas etapas.

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

Adicionar uma condição

Se você quiser que o fluxo de trabalho do aplicativo lógico seja executado somente quando um evento ou operação específica acontecer, adicione uma condição que verifique a operação Microsoft.Compute/virtualMachines/write . Quando essa condição for verdadeira, o fluxo de trabalho do aplicativo lógico enviará um e-mail, com detalhes sobre a máquina virtual atualizada.

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

    Screenshot that shows the workflow designer with

  2. Em Escolha uma ação, na caixa de pesquisa, digite condition como 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 serem seguidos com base se a condição é verdadeira ou falsa.

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

  3. Renomeie 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. Crie uma condição que verifique o evento body para um data objeto onde a operationName propriedade é igual à Microsoft.Compute/virtualMachines/write operação. Saiba mais sobre o esquema de eventos da Grade de Eventos do Azure.

    1. Na primeira linha por baixo de E, clique no interior da caixa à esquerda. Na lista de conteúdo dinâmico 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 selecione 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 você deseja monitorar, que é o seguinte valor para este exemplo:

      Microsoft.Compute/virtualMachines/write

    Sua condição concluída agora se parece com este exemplo:

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

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

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

  5. Guarde a sua aplicação lógica.

Enviar notificações por e-mail

Agora, adicione uma ação para que você possa receber um e-mail quando a condição especificada for verdadeira.

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

    Screenshot that shows the workflow designer with the condition's

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

    • Numa conta escolar ou profissional do Azure, selecione o conector Office 365 Outlook.

    • Em contas Microsoft pessoais, selecione o conector Outlook.com.

    • Em contas do Gmail, selecione o conector Gmail.

    Este tutorial continua com o conector do Office 365 Outlook. Se você usar um provedor diferente, as etapas permanecerão as mesmas, mas sua interface do usuário poderá parecer ligeiramente diferente.

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

  3. Se ainda não tiver uma ligação para o seu fornecedor de e-mail, inicie sessão na sua conta de e-mail quando lhe for pedido para autenticar.

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

  5. Forneça informações sobre o e-mail 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.

    Gorjeta

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

    Propriedade Necessário Valor Description
    De Sim <recipient@domain> Introduza o endereço de e-mail do destinatário. Para fins de teste, pode utilizar o seu próprio endereço de e-mail.
    Assunto Sim Resource updated:Assunto Introduza o conteúdo para o assunto do e-mail. Para este tutorial, insira o texto especificado e selecione o campo Assunto do evento. Aqui, o assunto do e-mail 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

    Introduza o conteúdo para o corpo do e-mail. 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 ao conteúdo, prima Shift + Enter.

    Nota

    Se selecionar um campo que representa uma matriz, o estruturador adiciona automaticamente um ciclo For each em torno da ação que referencia essa matriz. Dessa forma, o fluxo de trabalho do aplicativo lógico executa essa ação em cada item de matriz.

    Agora, a ação de e-mail pode ter o seguinte aspeto neste 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 se parecer com o exemplo a seguir:

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

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

    A aplicação lógica está agora publicada, mas aguarda as alterações à máquina virtual antes de efetuar alguma ação. Para testar seu fluxo de trabalho agora, continue para a próxima seção.

Testar o fluxo de trabalho da aplicação lógica

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

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

    Após alguns instantes, deve obter um e-mail. Por exemplo:

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

  2. Para revisar as execuções e o histórico de gatilhos do seu aplicativo lógico, no menu do aplicativo lógico, selecione Visão geral. Para ver 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 ver as entradas e saídas de cada passo, expanda o passo que pretende rever. Estas informações podem ajudá-lo a diagnosticar e depurar problemas na sua aplicação lógica.

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

Parabéns, você criou e executa um fluxo de trabalho de aplicativo lógico que monitora eventos de recursos por meio da Grade de Eventos do Azure e envia e-mails para você quando esses eventos acontecem. Também ficou a saber como pode criar facilmente fluxos de trabalho que automatizam processos e integram sistemas e serviços cloud.

Pode monitorizar outras alterações de configuração com grelhas de eventos e aplicações lógicas, por exemplo:

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

Clean up resources (Limpar recursos)

Este tutorial utiliza recursos e realiza ações que incorrem em custos na sua subscrição do Azure. Assim, quando concluir o tutorial e os testes, certifique-se de que desativa ou elimina quaisquer recursos nos casos em que não quer incorrer em custos.

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

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

    Gorjeta

    Se não vir o menu da aplicação lógica, experimente regressar ao dashboard do Azure e reabra-a.

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

Próximos passos

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