Kurz: Reakce na události služby Azure Service Bus přijaté přes Azure Event Grid pomocí Azure Logic Apps

V tomto kurzu se dozvíte, jak reagovat na události služby Azure Service Bus přijaté přes Azure Event Grid pomocí Azure Logic Apps.

Požadavky

Pokud ještě nemáte předplatné Azure, vytvořte si bezplatný účet před tím, než začnete.

Vytvoření oboru názvů služby Service Bus

Postupujte podle pokynů v tomto kurzu: Rychlý start: Použití webu Azure Portal k vytvoření tématu a odběrů služby Service Bus a provedení následujících úloh:

  • Vytvořte obor názvů služby Service Bus úrovně Premium .
  • Získejte připojovací řetězec.
  • Vytvořte téma služby Service Bus.
  • Vytvořte odběr tématu. V tomto kurzu potřebujete jenom jedno předplatné, takže nemusíte vytvářet předplatná S2 a S3.

Odesílání zpráv do tématu služby Service Bus

V tomto kroku použijete ukázkovou aplikaci k odesílání zpráv do tématu služby Service Bus, které jste vytvořili v předchozím kroku.

  1. Naklonujte úložiště azure-service-bus GitHubu nebo stáhněte soubor ZIP a extrahujte z něj soubory.

  2. V sadě Visual Studio přejděte do složky \samples\DotNet\Azure.Messaging.ServiceBus\ServiceBusEventGridIntegrationV2 a otevřete soubor SBEventGridIntegration.sln .

  3. V okně Průzkumník řešení rozbalte projekt MessageSender a vyberte Program.cs.

  4. Nahraďte <SERVICE BUS NAMESPACE - CONNECTION STRING> připojovací řetězec do oboru názvů služby Service Bus a <TOPIC NAME> názvem tématu.

    const string ServiceBusConnectionString = "<SERVICE BUS NAMESPACE - CONNECTION STRING>";
    const string TopicName = "<TOPIC NAME>";
    
  5. Sestavte a spusťte program, který odešle 5 testovacích zpráv (const int numberOfMessages = 5;) do tématu služby Service Bus.

    Výstup konzolové aplikace

Příjem zpráv pomocí Logic Apps

V tomto kroku vytvoříte aplikaci logiky Azure, která přijímá události služby Service Bus přes Azure Event Grid.

  1. Vyberte + Vytvořit prostředek, vyberte Integrace a pak vyberte Aplikace logiky.

    Snímek obrazovky znázorňující nabídku Vytvořit prostředek –> Integrace –> Aplikace logiky

  2. Na stránce Vytvořit aplikaci logiky postupujte takto:

    1. Vyberte své předplatné Azure.
    2. Vyberte Možnost Použít existující pro skupinu prostředků a vyberte skupinu prostředků, kterou jste použili pro jiné prostředky (jako je funkce Azure, obor názvů služby Service Bus), kterou jste vytvořili dříve.
    3. Zadejte název aplikace logiky.
    4. Vyberte oblast aplikace logiky.
    5. Jako typ plánu vyberte Consumption. (Spotřeba).
    6. Vyberte Zkontrolovat a vytvořit. Snímek obrazovky se stránkou Vytvořit aplikaci logiky
    7. Na stránce Zkontrolovat a vytvořit vyberte Vytvořit a vytvořte aplikaci logiky.
  3. Na stránce Dokončení nasazení vyberte Přejít k prostředku a přejděte na stránku aplikace logiky.

  4. Na stránce Návrhář pro Logic Apps vyberte v části Šablony prázdnou aplikaci logiky.

Přidání kroku příjmu zpráv ze služby Service Bus přes Event Grid

  1. Na stránce aplikace logiky vyberte v nabídce vlevo návrhář aplikace logiky.

  2. V pravém podokně v části Šablony vyberte Prázdnou aplikaci logiky.

    Snímek obrazovky znázorňující stránku návrháře aplikace logiky s vybranou možností Prázdná aplikace logiky

  3. V návrháři proveďte následující kroky:

    1. Vyhledejte Event Grid.

    2. Vyberte , kdy dojde k události prostředku – Azure Event Grid.

      Snímek obrazovky znázorňující Návrháře pro Logic Apps s vybranou aktivační událostí Event Gridu

  4. Vyberte Sign in (Přihlásit se).

    Snímek obrazovky znázorňující Návrháře pro Logic Apps s vybraným tlačítkem Přihlásit se

  5. Na stránce Přihlásit se ke svému účtu vyberte účet, který chcete použít pro přihlášení k Azure. 1.

  6. Na stránce Při výskytu události prostředku proveďte následující kroky:

    1. Vyberte své předplatné Azure.

    2. Jako typ prostředku vyberte Microsoft.ServiceBus.Namespaces.

    3. Jako název prostředku vyberte obor názvů služby Service Bus.

    4. Vyberte Přidat nový parametr, vyberte Filtr přípony a přesuňte fokus mimo rozevírací seznam.

      Snímek obrazovky znázorňující přidání nového parametru filtru přípony typu

    5. Jako filtr přípon zadejte název předplatného tématu služby Service Bus.

      Snímek obrazovky znázorňující Návrháře pro Logic Apps s konfigurací připojení pro obor názvů služby Service Bus

  7. V návrháři vyberte + Nový krok a proveďte následující kroky:

    1. Vyhledejte Service Bus.

    2. V seznamu vyberte Service Bus .

      Snímek obrazovky znázorňující výběr služby Service Bus

    3. V seznamu Akce vyberte možnost Získat zprávy.

    4. Vyberte Získat zprávy z odběru tématu (náhled uzamčení).

      Snímek obrazovky znázorňující Návrháře pro Logic Apps s vybranou možností Získat zprávy z odběru tématu

    5. Postupujte následovně:

      1. Zadejte název připojení. Příklad: Získání zpráv z odběru tématu.

      2. Ověřte, že je typ ověřování nastavený na přístupový klíč.

      3. Pro Připojení ion String zkopírujte a vložte připojovací řetězec do oboru názvů služby Service Bus, který jste si uložili dříve.

      4. Vyberte Vytvořit.

        Snímek obrazovky znázorňující Návrháře pro Logic Apps se zadaným připojovací řetězec Service Bus

    6. Vyberte své téma a předplatné.

      Snímek obrazovky znázorňující Návrháře pro Logic Apps se zadaným tématem a předplatným služby Service Bus

Přidání kroku pro zpracování a dokončení přijatých zpráv

V tomto kroku přidáte kroky k odeslání přijaté zprávy v e-mailu a následnému dokončení zprávy. Ve skutečném scénáři zpracujete zprávu v aplikaci logiky před dokončením zprávy.

Přidání smyčky foreach

  1. Vyberte + Nový krok.

  2. Vyhledejte a pak vyberte Ovládací prvek.

    Snímek obrazovky znázorňující kategorii Ovládací prvek

  3. V seznamu Akce vyberte Pro každý.

    Snímek obrazovky znázorňující vybranou operaci For-each

  4. Pokud chcete vybrat výstup z předchozích kroků (v případě potřeby klikněte do textového pole), vyberte Text v části Získat zprávy z odběru tématu (náhled-lock).

    Snímek obrazovky znázorňující výběr jednotlivých vstupů

Přidání kroku do smyčky foreach pro odeslání e-mailu s textem zprávy

  1. V rámci smyčky For Each vyberte Přidat akci.

    Snímek obrazovky znázorňující výběr tlačítka Přidat akci ve smyčce For-each

  2. Do textového pole Prohledat konektory a akce zadejte Office 365.

  3. Ve výsledcích hledání vyberte Office 365 Outlook .

    Snímek obrazovky znázorňující výběr Office 365

  4. V seznamu akcí vyberte Odeslat e-mail (V2).

    Snímek obrazovky znázorňující výběr operace Odeslat e-mail

  5. Vyberte Přihlásit se a podle kroků vytvořte připojení k Office 365 Outlooku.

  6. V okně Odeslat e-mail (V2) postupujte takto:

  7. Vyberte uvnitř textového pole text a postupujte takto:

    1. Do možnosti To zadejte e-mailovou adresu.

    2. Do předmětu zadejte zprávu přijatou z odběru tématu služby Service Bus.

    3. Přepněte na výraz.

    4. Zadejte následující výraz:

      base64ToString(items('For_each')?['ContentData'])
      
    5. Vyberte OK.

      Snímek obrazovky znázorňující výraz pro text e-mailové aktivity

Přidání další akce ve smyčce foreach pro dokončení zprávy

  1. V rámci smyčky For Each vyberte Přidat akci.

    1. V seznamu Poslední vyberte Service Bus.

    2. V seznamu akcí vyberte Dokončit zprávu v odběru tématu.

      Snímek obrazovky znázorňující výběr možnosti Dokončit zprávu v odběru tématu

    3. Vyberte téma služby Service Bus.

    4. Vyberte předplatné tématu.

    5. V části Uzamknout token zprávy vyberte Zámek tokenu z dynamického obsahu.

      Snímek obrazovky znázorňující pole tokenu zámku

  2. Výběrem možnosti Uložit na panelu nástrojů v Návrháři pro Logic Apps uložte aplikaci logiky.

    Snímek obrazovky znázorňující tlačítko Uložit v aplikaci logiky navržené

Otestování aplikace

  1. Pokud jste do tématu ještě neposílali testovací zprávy, postupujte podle pokynů v části Odeslání zpráv do tématu služby Service Bus a odešlete zprávy do tématu.

  2. Přepněte na stránku Přehled aplikace logiky a v dolním podokně přejděte na kartu Historie spuštění. Zobrazí se, že aplikace logiky spouští zprávy odeslané do tématu. Než se aplikace logiky spustí, může to trvat několik minut. Výběrem možnosti Aktualizovat na panelu nástrojů aktualizujte stránku.

    Snímek obrazovky znázorňující historii spuštění aplikace logiky

  3. Výběrem spuštění aplikace logiky zobrazíte podrobnosti. Všimněte si, že zpracovával 5 zpráv ve smyčce for.

    Snímek obrazovky znázorňující podrobnosti o spuštění vybrané aplikace logiky

  4. Pro každou zprávu, kterou aplikace logiky obdrží, byste měli dostat e-mail.

    Snímek obrazovky Outlooku se zprávami přijatými z odběru témat

Odstraňování potíží

Pokud se po nějakém čekání a aktualizaci nezobrazí žádné vyvolání, postupujte takto:

  1. Ověřte, že se zprávy dostaly do tématu služby Service Bus. Podívejte se na čítač příchozích zpráv na stránce Téma služby Service Bus. V tomto případě jsem jednou spustila aplikaci MessageSender , takže vidím 5 zpráv.

    Snímek obrazovky zobrazující stránku Téma služby Service Bus s vybraným počtem příchozích zpráv

  2. Ověřte, že v odběru služby Service Bus nejsou žádné aktivní zprávy . Pokud na této stránce nevidíte žádné události, ověřte, že se na stránce Odběr služby Service Bus nezobrazuje žádný počet aktivních zpráv. Pokud je číslo pro tento čítač větší než nula, zprávy v odběru se z nějakého důvodu nepřepošlou do funkce obslužné rutiny (obslužná rutina odběru událostí). Ověřte, že jste správně nastavili odběr událostí.

    Snímek obrazovky se stránkou Odběr služby Service Bus s vybraným počtem aktivních zpráv

  3. Na stránce Události oboru názvů služby Service Bus se zobrazují také doručené události.

    Snímek obrazovky se stránkou Události na stránce Oboru názvů služby Service Bus

  4. Můžete také vidět, že události se doručují na stránce Odběr událostí. Na tuto stránku se dostanete tak, že na stránce Události vyberete odběr události.

    Snímek obrazovky znázorňující stránku Odběr událostí s vybraným počtem doručených událostí

Další kroky