Kurz: Monitorování změn virtuálních počítačů pomocí Azure Event Gridu a Azure Logic Apps

Platí pro: Azure Logic Apps (Consumption)

Pomocí Azure Event Gridu a Azure Logic Apps můžete monitorovat a reagovat na konkrétní události, ke kterým dochází v prostředcích Azure nebo externích prostředcích. Pomocí Azure Logic Apps můžete vytvořit automatizovaný pracovní postup aplikace logiky Consumption s minimálním kódem. Tyto prostředky můžete mít k publikování událostí ve službě Azure Event Grid. Azure Event Grid pak tyto události odesílá odběratelům, kteří mají fronty, webhooky nebo centra událostí jako koncové body. Jako odběratel váš pracovní postup čeká, až tyto události dorazí do služby Azure Event Grid, a teprve potom spustí kroky pro zpracování událostí.

Tady je například několik událostí, které můžou vydavatelé odesílat odběratelům prostřednictvím služby Azure Event Grid:

  • Vytvoření, čtení, aktualizace nebo odstranění prostředku. Můžete třeba monitorovat změny, za které mohou být účtovány poplatky v předplatném Azure a které ovlivní vaše vyúčtování.

  • Přidání osoby do předplatného Azure nebo její odebrání.

  • Aplikace provede určitou akci.

  • Nová zpráva se zobrazí ve frontě.

Tento kurz vytvoří prostředek aplikace logiky Consumption, který běží ve víceklientských azure Logic Apps a je založený na cenovém modelu Consumption. Pomocí tohoto prostředku aplikace logiky vytvoříte pracovní postup, který monitoruje změny virtuálního počítače a odesílá e-maily o těchto změnách. Když vytvoříte pracovní postup, který má odběr událostí prostředku Azure, události z daného prostředku procházejí přes Azure Event Grid do pracovního postupu.

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

V tomto kurzu se naučíte:

  • Vytvořte prostředek a pracovní postup aplikace logiky, který monitoruje události z Azure Event Gridu.
  • Přidat podmínku, která výslovně kontroluje změny virtuálního počítače.
  • Odeslat e-mail při změně virtuálního počítače.

Požadavky

  • Účet a předplatné Azure. Pokud nemáte předplatné Azure, zaregistrujte si bezplatný účet Azure.

  • E-mailový účet z e-mailové služby, která funguje s Azure Logic Apps pro odesílání oznámení, jako je Office 365 Outlook, Outlook.com nebo Gmail. Pokud máte jiného poskytovatele, tady se podívejte na seznam konektorů.

    Tento kurz používá účet Office 365 Outlook. Pokud používáte jiný e-mailový účet, zůstává obecný postup stejný, ale vaše uživatelské rozhraní může vypadat trochu jinak.

    Důležité

    Pokud chcete používat konektor Gmail, můžou tento konektor používat jenom obchodní účty G-Suite bez omezení v aplikacích logiky. Pokud máte uživatelský účet Gmail, můžete tento konektor použít pouze s konkrétními službami schválenými Googlem nebo můžete vytvořit klientskou aplikaci Google, která se použije k ověřování pomocí konektoru Gmail. Další informace najdete v tématu Zabezpečení dat a zásady ochrany osobních údajů pro konektory Google v Azure Logic Apps.

  • Virtuální počítač , který je sám ve vlastní skupině prostředků Azure. Pokud jste to ještě neudělali, vytvořte virtuální počítač prostřednictvím kurzu Vytvoření virtuálního počítače. Publikování událostí virtuálním počítačem nevyžaduje z vaší strany žádnou další akci.

  • Pokud máte bránu firewall, která omezuje provoz na konkrétní IP adresy, musíte nastavit bránu firewall tak, aby umožňovala přístup ke službě Azure Logic Apps ke komunikaci přes bránu firewall. Potřebujete povolit přístup pro příchozí i odchozí IP adresy používané službou Azure Logic Apps v oblasti Azure, kde vytváříte aplikaci logiky.

    Tento příklad používá spravované konektory, které vyžadují, aby brána firewall umožňovala přístup pro všechny odchozí IP adresy spravovaného konektoru v oblasti Azure pro váš prostředek aplikace logiky.

Vytvoření prostředku aplikace logiky

  1. Přihlaste se k webu Azure Portal pomocí svého účtu Azure.

  2. Na domovské stránce Azure vyberte Vytvořit aplikaci logiky integrace>prostředků>.

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

  3. V části Vytvořit aplikaci logiky zadejte informace o prostředku aplikace logiky:

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

    Vlastnost Požaduje se Hodnota Popis
    Předplatné Ano <Azure-subscription-name> Vyberte stejné předplatné Azure pro všechny služby v tomto kurzu.
    Skupina prostředků Ano <Skupina prostředků Azure> Název skupiny prostředků Azure pro vaši aplikaci logiky, kterou můžete vybrat pro všechny služby v tomto kurzu.
    Název aplikace logiky Ano <název aplikace logiky> Zadejte jedinečný název aplikace logiky.
    Publikovat Ano Workflow Vyberte cíl nasazení pro vaši aplikaci logiky. V tomto kurzu se ujistěte, že vyberete Pracovní postup, který se nasadí do Azure.
    Oblast Ano <Oblast Azure> Pro všechny služby v tomto kurzu vyberte stejnou oblast.
    Typ plánu Ano Využití Typ prostředku pro vaši aplikaci logiky V tomto kurzu se ujistěte, že jste vybrali consumption.

    Poznámka:

    Pokud později chcete použít operace Azure Event Gridu s prostředkem standardní aplikace logiky, ujistěte se, že vytvoříte stavový pracovní postup, nikoli bezstavový pracovní postup. Tento kurz se týká jenom aplikací logiky Consumption, které sledují jiné uživatelské prostředí. Pokud chcete do pracovního postupu v návrháři přidat operace Azure Event Gridu, ujistěte se, že v podokně pro výběr operací vyberete kartu Azure . Další informace o víceklientských a jednoklientských azure Logic Apps najdete v tématu Jednoklient a prostředí integrační služby.

  4. Až budete hotovi, vyberte Zkontrolovat a vytvořit. V dalším podokně potvrďte zadané informace a vyberte Vytvořit.

  5. Jakmile Azure nasadí vaši aplikaci logiky, vyberte Přejít k prostředku.

    Návrhář pracovního postupu zobrazuje stránku s úvodním videem a běžně používanými triggery.

  6. Posuňte se za okno videa a oddíl běžně používaných triggerů.

  7. V oblasti Šablony vyberte Prázdná aplikace logiky.

    Poznámka:

    Galerie šablon pracovních postupů je dostupná jenom pro aplikace logiky Consumption, nikoli pro standardní aplikace logiky.

    Screenshot showing Azure Logic Apps templates with selected

    Návrhář pracovního postupu teď ukazuje triggery, které můžete použít ke spuštění aplikace logiky . Každý pracovní postup musí začínat triggerem, který se aktivuje, když dojde k určité události nebo když je splněna určitá podmínka. Pokaždé, když se trigger aktivuje, Azure Logic Apps vytvoří instanci pracovního postupu, která spouští vaši aplikaci logiky.

Přidání triggeru Azure Event Gridu

Teď přidejte trigger Azure Event Gridu, který použijete k monitorování skupiny prostředků pro váš virtuální počítač.

  1. V návrháři do vyhledávacího pole zadejte event grid. V seznamu aktivačních událostí vyberte trigger Při výskytu události prostředku.

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

  2. Po zobrazení výzvy se přihlaste ke službě Azure Event Grid pomocí přihlašovacích údajů účtu Azure. V seznamu tenantů, který zobrazuje tenanta Microsoft Entra, který je přidružený k vašemu předplatnému Azure, zkontrolujte, jestli se zobrazí správný tenant, například:

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

    Poznámka:

    Pokud jste přihlášení pomocí osobního účtu Microsoft, například @outlook.com@hotmail.compomocí triggeru Azure Event Gridu, nemusí se zobrazit správně. Jako alternativní řešení vyberte Připojení s instančním objektem nebo se ověřte jako člen microsoft Entra, který je přidružený k vašemu předplatnému Azure, například uživatelské jméno@emailoutlook.onmicrosoft.com.

  3. Teď se přihlaste k odběru aplikace logiky k událostem od vydavatele. Zadejte podrobnosti o odběru událostí, jak je popsáno v následující tabulce, například:

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

    Vlastnost Požaduje se Hodnota Popis
    Předplatné Ano <event-publisher-Azure-subscription-name> Vyberte název předplatného Azure přidruženého k vydavateli události. Pro účely tohoto kurzu vyberte název předplatného Azure pro váš virtuální počítač.
    Typ prostředku Ano <event-publisher-Azure-resource-type> Vyberte typ prostředku Azure pro vydavatele události. Další informace o typech prostředků Azure najdete v tématu Poskytovatelé a typy prostředků Azure. Pro účely tohoto kurzu vyberte Microsoft.Resources.ResourceGroups hodnotu pro monitorování skupin prostředků Azure.
    Název prostředku Ano <event-publisher-Azure-resource-name> Vyberte název prostředku Azure pro vydavatele události. Tento seznam se liší podle typu prostředku, který jste vybrali. Pro účely tohoto kurzu vyberte název skupiny prostředků Azure, která obsahuje váš virtuální počítač.
    Položka typu události No <typy událostí> Vyberte jeden nebo více konkrétních typů událostí, které chcete filtrovat a odesílat do Azure Event Gridu. Volitelně můžete například přidat tyto typy událostí, abyste zjistili, kdy se prostředky změnily nebo odstranily:

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

    Další informace najdete v těchto tématech:

    - Schéma událostí Azure Event Gridu pro skupiny prostředků
    - Principy filtrování událostí
    - Filtrování událostí pro Azure Event Grid

    Pokud chcete přidat volitelné vlastnosti, vyberte Přidat nový parametr a pak vyberte požadované vlastnosti. No {viz popisy} * Filtr předpony: Pro účely tohoto kurzu nechte tuto vlastnost prázdnou. Výchozí chování odpovídá všem hodnotám. Do filtru můžete zadat řetězec předpony, třeba cestu k určitému prostředku a jeho parametr.

    * Filtr přípon: Pro účely tohoto kurzu nechte tuto vlastnost prázdnou. Výchozí chování odpovídá všem hodnotám. Do filtru můžete zadat řetězec přípony, třeba příponu názvu souboru, pokud chcete jenom určité typy souborů.

    * Název odběru: Pro účely tohoto kurzu můžete zadat jedinečný název odběru událostí.

  4. Uložte pracovní postup aplikace logiky. Na panelu nástrojů návrháře vyberte Uložit. Pokud chcete v pracovním postupu sbalit a skrýt podrobnosti akce, vyberte záhlaví akce.

    Screenshot that shows the workflow designer and the

    Když pracovní postup aplikace logiky uložíte pomocí triggeru Azure Event Gridu, Azure automaticky vytvoří odběr událostí pro vaši aplikaci logiky do vybraného prostředku. Takže když prostředek publikuje událost do služby Azure Event Grid, služba událost automaticky odešle do vaší aplikace logiky. Tato událost aktivuje a spustí pracovní postup aplikace logiky, který definujete v následujících krocích.

Vaše aplikace logiky je teď živá a naslouchá událostem z Azure Event Gridu, ale nedělá nic, dokud do pracovního postupu nepřidáte akce.

Přidat podmínku

Pokud chcete, aby se pracovní postup aplikace logiky spustil pouze v případě, že dojde k určité události nebo operaci, přidejte podmínku, která kontroluje operaci Microsoft.Compute/virtualMachines/write . Pokud je tato podmínka pravdivá, pracovní postup aplikace logiky vám pošle e-mail s podrobnostmi o aktualizovaném virtuálním počítači.

  1. V návrháři pracovního postupu pod triggerem Azure Event Gridu vyberte Nový krok.

    Screenshot that shows the workflow designer with

  2. V části Zvolte akci do vyhledávacího pole zadejte condition jako filtr. V seznamu akcí vyberte akci Podmínka .

    Screenshot that shows the workflow designer with

    Návrhář pracovního postupu přidá do pracovního postupu prázdnou podmínku, včetně cest akcí, podle toho, jestli je podmínka pravdivá nebo nepravda.

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

  3. Přejmenujte název podmínky na If a virtual machine in your resource group has changed. V záhlaví podmínky vyberte tlačítko se třemi tečkami (...) a vyberte Přejmenovat.

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

  4. Vytvořte podmínku, která zkontroluje událost body objektu data , ve kterém operationName je vlastnost rovna Microsoft.Compute/virtualMachines/write operaci. Přečtěte si další informace o schématu událostí služby Azure Event Grid.

    1. Na prvním řádku pod A klikněte do levého pole. V zobrazeném seznamu dynamického obsahu vyberte Výraz.

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

    2. V editoru výrazů zadejte tento výraz, který vrátí název operace z triggeru, a vyberte OK:

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

      Příklad:

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

    3. V prostředním poli ponechte operátor rovná se.

    4. Do pravého pole zadejte operaci, kterou chcete monitorovat, což je následující hodnota pro tento příklad:

      Microsoft.Compute/virtualMachines/write

    Dokončená podmínka teď vypadá jako v tomto příkladu:

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

    Pokud přepnete z návrhového zobrazení na zobrazení kódu a zpět do návrhového zobrazení, výraz zadaný v podmínce se přeloží na token data.operationName :

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

  5. Uložte aplikaci logiky.

Odeslání e-mailových oznámení

Teď přidejte akci , abyste mohli obdržet e-mail, když je zadaná podmínka pravdivá.

  1. V poli Pokud ano podmínky vyberte Přidat akci.

    Screenshot that shows the workflow designer with the condition's

  2. V části Zvolte akci do vyhledávacího pole zadejte send an email jako filtr. Vyhledejte a vyberte konektor odpovídající vašemu poskytovateli e-mailu. Pak pro konektor vyberte akci „odeslat e-mail“. Příklad:

    • Pro pracovní nebo školní účet Azure vyberte konektor Office 365 Outlook.

    • Pro osobní účty Microsoft vyberte konektor Outlook.com.

    • Pro účty Gmail vyberte konektor Gmail.

    Tento kurz pokračuje s konektorem Office 365 Outlook. Pokud používáte jiného poskytovatele, postup zůstane stejný, ale uživatelské rozhraní se může mírně lišit.

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

  3. Pokud ještě nemáte připojení k poskytovateli e-mailu, přihlaste se ke svému e-mailovému účtu, až budete požádáni o ověření.

  4. Přejmenujte akci odeslání e-mailu na tento název: Send email when virtual machine updated

  5. Zadejte informace o e-mailu, jak je uvedeno v následující tabulce:

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

    Tip

    Pokud chcete vybrat výstup z předchozích kroků v pracovním postupu, klikněte do textového pole, aby se zobrazil seznam dynamického obsahu, nebo vyberte Přidat dynamický obsah. Pokud chcete zobrazit další výsledky, vyberte Zobrazit více pro každý oddíl v seznamu. Pokud chcete seznam dynamického obsahu zavřít, znovu vyberte Přidat dynamický obsah .

    Vlastnost Požaduje se Hodnota Popis
    Na Ano <recipient@domain> Zadejte e-mailovou adresu příjemce. Pro účely testování můžete použít svou vlastní e-mailovou adresu.
    Předmět Ano Resource updated:Předmět Zadejte obsah předmětu e-mailu. V tomto kurzu zadejte zadaný text a vyberte pole Předmět události. V našem příkladu je v předmětu e-mailu název aktualizovaného prostředku (virtuálního počítače).
    Text Ano Resource:Předmět zájmu

    Event type:Typ události

    Event ID:ID

    Time:Čas události

    Zadejte obsah e-mailu. V tomto kurzu zadejte zadaný text a vyberte pole Téma události, Typ události, ID a Čas události, aby váš e-mail obsahoval prostředek, který událost aktivoval, typ události, časové razítko události a ID události pro aktualizaci. V tomto kurzu je prostředkem skupina prostředků Azure vybraná v triggeru.

    Pokud chcete do obsahu přidat prázdné řádky, stiskněte Shift + Enter.

    Poznámka:

    Pokud vyberete pole, které představuje pole položek, přidá návrhář automaticky kolem akce, která na toto pole odkazuje, smyčku For each. Tímto způsobem pracovní postup aplikace logiky provede tuto akci u každé položky pole.

    Teď vypadá akce e-mailu podobně jako v tomto příkladu:

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

    Dokončený pracovní postup aplikace logiky může vypadat jako v následujícím příkladu:

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

  6. Uložte aplikaci logiky. Pokud chcete sbalit a skrýt podrobnosti jednotlivých akcí v aplikaci logiky, vyberte záhlaví akce.

    Aplikace logiky je teď funkční, ale než provede akci, čeká na změny virtuálního počítače. Pokud chcete svůj pracovní postup otestovat, pokračujte k další části.

Testování pracovního postupu aplikace logiky

  1. Pokud chcete zkontrolovat, že váš pracovní postup dostává zadané události, aktualizujte virtuální počítač.

    Můžete například změnit velikost virtuálního počítače.

    Za chvíli by vám měl přijít e-mail. Příklad:

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

  2. Pokud chcete zkontrolovat historii spuštění a aktivační události pro aplikaci logiky, vyberte v nabídce aplikace logiky přehled. Pokud chcete zobrazit další podrobnosti o spuštění, vyberte řádek tohoto spuštění.

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

  3. Pokud chcete zobrazit vstupy a výstupy jednotlivých kroků, rozbalte krok, který chcete zkontrolovat. Tyto informace vám můžou pomoct s diagnostikou a laděním problémů ve vaší aplikaci logiky.

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

Blahopřejeme, vytvořili jste a spustili jste pracovní postup aplikace logiky, který monitoruje události prostředků prostřednictvím služby Azure Event Grid a pošle vám e-maily, když k těmto událostem dojde. Také jste se naučili, jak můžete jednoduše vytvářet pracovní postupy, které automatizují procesy a integrují systémy a cloudové služby.

Event Gridy a aplikace logiky umožňují monitorovat i jiné konfigurační změny, například:

  • Virtuální počítač získá práva řízení přístupu na základě role v Azure (Azure RBAC).
  • Změny provedené ve skupině zabezpečení sítě (NSG) v síťovém rozhraní (NIC).
  • Přidání nebo odebrání disků virtuálního počítače.
  • Přiřazení veřejné IP adresy síťovému rozhraní virtuálního počítače.

Vyčištění prostředků

Tento kurz využívá prostředky a provádí akce, za které mohou být ve vašem předplatném Azure účtovány poplatky. Jakmile budete s kurzem a testováním hotovi, nezapomeňte vypnout nebo odstranit všechny prostředky, za které nechcete platit poplatky.

  • Pokud chcete ukončit spouštění pracovního postupu bez odstranění práce, zakažte aplikaci. V nabídce aplikace logiky vyberte Přehled. Na panelu nástrojů vyberte Zakázat.

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

    Tip

    Pokud se nabídka aplikace logiky nezobrazí, zkuste se vrátit na řídicí panel Azure a otevřít aplikaci logiky znovu.

  • Pokud chcete trvale odstranit aplikaci logiky, v nabídce aplikace logiky vyberte Přehled. Na panelu nástrojů vyberte Odstranit. Potvrďte, že chcete aplikaci logiky odstranit, a vyberte Odstranit.

Další kroky

V následujících ukázkách se dozvíte o publikování událostí do a využívání událostí z Azure Event Gridu pomocí různých programovacích jazyků.