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

Platí pro: Azure Logic Apps (Consumption)

Pomocí Azure Event Grid 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 publikovat události do Azure Event Grid. Naopak Azure Event Grid tyto události nasdílí odběratelům, kteří mají fronty, webhooky nebo centra událostí jako koncové body. Pracovní postup jako odběratel čeká na doručení těchto událostí Azure Event Grid před spuštěním kroků pro zpracování událostí.

Tady jsou například některé události, které můžou vydavatelé odesílat odběratelům prostřednictvím 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ěží v Azure Logic Apps s více tenanty 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 s předplatným událostí prostředku Azure, události z daného prostředku přetékají 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 aplikace logiky a pracovní postup, který monitoruje události z Azure Event Grid.
  • 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

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řitaplikaci logikyintegrace>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 <Název předplatného Azure> 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, který 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 Pracovní postup 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 Grid s prostředkem aplikace logiky Standard, ujistěte se, že vytvoříte stavový pracovní postup, nikoli bezstavový pracovní postup. Tento kurz se vztahuje pouze na aplikace logiky Consumption, které sledují jiné uživatelské prostředí. Pokud chcete do pracovního postupu v návrháři přidat operace Azure Event Grid, ujistěte se, že v podokně pro výběr operací vyberete kartu Azure. Další informace o více tenantech a Azure Logic Apps s jedním tenantem najdete v tématu Jednoklientština 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. Po nasazení aplikace logiky Azure 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 běžně používaný oddíl 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 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 Grid

Teď přidejte trigger Azure Event Grid, 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 triggerů 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 k Azure Event Grid pomocí přihlašovacích údajů účtu Azure. V seznamu tenantů, který zobrazuje tenanta Azure Active Directory přidruženého 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.comnebo , trigger Azure Event Grid se nemusí zobrazit správně. Jako alternativní řešení vyberte Připojení s instančním objektem nebo ověřte jako člena Azure Active Directory, který je přidružený k vašemu předplatnému Azure, například uživatelské jméno@emailoutlook.onmicrosoft.com.

  3. Teď si přihlaste aplikaci logiky k odběru událostí od vydavatele. Zadejte podrobnosti o vašem 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, které je přidružené 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 Ne <typy událostí> Vyberte jeden nebo více konkrétních typů událostí, které chcete filtrovat a odesílat do Azure Event Grid. Můžete například přidat tyto typy událostí, abyste zjistili, kdy se prostředky změní nebo odstraní:

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

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

    - Azure Event Grid schématu událostí pro skupiny prostředků
    - Vysvětlení 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. Ne {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řípony: 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 předplatného: Pro účely tohoto kurzu můžete zadat jedinečný název vašeho odběru událostí.

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

    Screenshot that shows the workflow designer and the

    Když pracovní postup aplikace logiky uložíte s triggerem Azure Event Grid, 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 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 Grid, ale nedělá nic, dokud do pracovního postupu nepřidáte akce.

Přidání podmínky

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 Grid 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í pro sledování na základě 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. Na 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í Azure Event Grid.

    1. Na prvním řádku pod A klikněte do levého pole. V seznamu dynamického obsahu, který se zobrazí, 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, který jste zadali 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 pole pro úpravy, aby se zobrazil seznam dynamického obsahu, nebo vyberte Přidat dynamický obsah. Další výsledky získáte tak, že vyberete Zobrazit více pro jednotlivé oddíly v seznamu. Pokud chcete seznam dynamického obsahu zavřít, znovu vyberte Přidat dynamický obsah .

    Vlastnost Požaduje se Hodnota Popis
    Do 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. Pro účely tohoto 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:Téma

    Event type:Typ události

    Event ID:ID

    Time:Čas události

    Zadejte obsah e-mailu. Pro účely tohoto 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 aktualizace. V tomto kurzu je prostředek 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. Pracovní postup aplikace logiky tak 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 pracovní postup otestovat, pokračujte k další části.

Testování pracovního postupu aplikace logiky

  1. Pokud chcete zkontrolovat, že 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 spuštění a historii triggerů pro vaši aplikaci logiky, vyberte v nabídce aplikace logiky přehled. Pokud chcete zobrazit další podrobnosti o spuštění, vyberte řádek pro toto 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 pracovní postup aplikace logiky, který monitoruje události prostředků prostřednictvím Azure Event Grid a e-mailů, 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 na řízení přístupu na základě role 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 aplikaci logiky trvale odstranit, v nabídce aplikace logiky vyberte Přehled. Na panelu nástrojů vyberte Odstranit. Potvrďte, že chcete odstranit aplikaci logiky, a vyberte Odstranit.

Další kroky

V následujících ukázkách se dozvíte, jak publikovat události a využívat události z Azure Event Grid pomocí různých programovacích jazyků.