Odesílání událostí ze služby API Management do Event Gridu
PLATÍ PRO: Consumption | Vývojář | Základní | Standardní | Prémie
API Management se integruje se službou Azure Event Grid , abyste mohli odesílat oznámení událostí do jiných služeb a aktivovat podřízené procesy. Event Grid je plně spravovaná služba směrování událostí, která používá model publikování a odběru. Event Grid nabízí integrovanou podporu služeb Azure, jako jsou Azure Functions nebo Azure Logic Apps, a dokáže posílat upozornění na události do služeb mimo Azure s využitím webhooků.
Pomocí integrace s Event Gridem můžete například vytvořit aplikaci, která aktualizuje databázi, vytvoří fakturační účet a odešle e-mailové oznámení pokaždé, když se uživatel přidá do vaší instance služby API Management.
V tomto článku se přihlásíte k odběru událostí Event Gridu ve vaší instanci služby API Management, aktivujete události a odešlete události do koncového bodu, který zpracovává data. Aby bylo jednoduché, odešlete události do ukázkové webové aplikace, která shromažďuje a zobrazuje zprávy:
Požadavky
Použijte prostředí Bash v Azure Cloud Shellu. Další informace najdete v tématu Rychlý start pro Bash v Azure Cloud Shellu.
Pokud dáváte přednost místnímu spouštění referenčních příkazů rozhraní příkazového řádku, nainstalujte Azure CLI. Pokud používáte Windows nebo macOS, zvažte spuštění Azure CLI v kontejneru Docker. Další informace najdete v tématu Jak spustit Azure CLI v kontejneru Dockeru.
Pokud používáte místní instalaci, přihlaste se k Azure CLI pomocí příkazu az login. Pokud chcete dokončit proces ověřování, postupujte podle kroků zobrazených na terminálu. Další možnosti přihlášení najdete v tématu Přihlášení pomocí Azure CLI.
Po zobrazení výzvy nainstalujte rozšíření Azure CLI při prvním použití. Další informace o rozšířeních najdete v tématu Využití rozšíření v Azure CLI.
Spuštěním příkazu az version zjistěte verzi a závislé knihovny, které jsou nainstalované. Pokud chcete upgradovat na nejnovější verzi, spusťte az upgrade.
- Pokud ještě nemáte službu API Management, proveďte následující rychlý start: Vytvoření instance služby Azure API Management
- Povolte spravovanou identitu přiřazenou systémem ve vaší instanci služby API Management.
- Vytvořte skupinu prostředků, pokud ji nemáte, ve které chcete nasadit ukázkový koncový bod.
Vytvoření koncového bodu události
V této části použijete šablonu Resource Manageru k nasazení předem připravené ukázkové webové aplikace do služby Aplikace Azure Service. Později se přihlásíte k odběru událostí Event Gridu instance služby API Management a určíte tuto aplikaci jako koncový bod, do kterého se události odesílají.
K nasazení ukázkové aplikace můžete použít Azure CLI, Azure PowerShell nebo Azure Portal. Následující příklad používá příkaz az deployment group create v Azure CLI.
Nastavit
RESOURCE_GROUP_NAME
na název existující skupiny prostředkůNastavení
SITE_NAME
jedinečného názvu webové aplikaceNázev webu musí být v rámci Azure jedinečný, protože je součástí plně kvalifikovaného názvu domény (FQDN) webové aplikace. V další části přejdete do plně kvalifikovaného názvu domény aplikace ve webovém prohlížeči a zobrazíte události.
RESOURCE_GROUP_NAME=<your-resource-group-name>
SITE_NAME=<your-site-name>
az deployment group create \
--resource-group $RESOURCE_GROUP_NAME \
--template-uri "https://raw.githubusercontent.com/Azure-Samples/azure-event-grid-viewer/master/azuredeploy.json" \
--parameters siteName=$SITE_NAME hostingPlanName=$SITE_NAME-plan
Po úspěšném nasazení (může to trvat několik minut), otevřete prohlížeč a přejděte do webové aplikace, abyste měli jistotu, že je spuštěná:
https://<your-site-name>.azurewebsites.net
Měla by se zobrazit ukázková aplikace vykreslená bez zobrazených zpráv událostí.
Registrace poskytovatele prostředků Event Gridu
Pokud jste službu Event Grid ještě nepoužívali, budete muset zaregistrovat poskytovatele prostředků Event Gridu. Pokud jste službu Event Grid používali dříve, přejděte k další části.
Na webu Azure Portal proveďte následující kroky:
V nabídce vlevo vyberte Předplatná.
V seznamu odběrů vyberte předplatné , které chcete použít pro Event Grid.
Na stránce Předplatné vyberte v části Nastavení v nabídce vlevo možnost Poskytovateléprostředků.
Vyhledejte Microsoft.EventGrid a ověřte, že stav není zaregistrovaný.
V seznamu zprostředkovatelů vyberte Microsoft.EventGrid .
Na panelu příkazů vyberte Zaregistrovat .
Aktualizujte, abyste měli jistotu , že je stav Microsoft.EventGrid změněn na Zaregistrovaný.
Přihlášení k odběru událostí služby API Management
Ve službě Event Grid se přihlásíte k odběru tématu , abyste mu řekli, které události chcete sledovat a kam je chcete odeslat. Tady vytvoříte odběr událostí ve vaší instanci služby API Management.
Na webu Azure Portal přejděte k vaší instanci služby API Management.
Vyberte Události > a odběr událostí.
Na kartě Základní:
- Zadejte popisný název odběru události.
- V typech událostí vyberte jeden nebo více typů událostí služby API Management, které chcete odeslat do event Gridu. V příkladu v tomto článku vyberte alespoň Microsoft.APIManagement.ProductCreated.
- V části Podrobnosti o koncovém bodu vyberte typ události WebHooku , klikněte na Vybrat koncový bod a zadejte adresu URL webové aplikace, za kterou
api/updates
následuje . Příklad:https://myapp.azurewebsites.net/api/updates
. - Vyberte Potvrdit výběr.
Ponechte nastavení na zbývajících kartách na výchozích hodnotách a pak vyberte Vytvořit.
Trigger a zobrazení událostí
Teď, když je ukázková aplikace spuštěná a přihlásili jste se k odběru instance služby API Management pomocí Event Gridu, jste připraveni generovat události.
Jako příklad vytvořte produkt v instanci služby API Management. Pokud vaše odběr událostí zahrnuje událost Microsoft.APIManagement.ProductCreated , vytvoření produktu aktivuje událost, která se odešle do koncového bodu webové aplikace.
Přejděte do webové aplikace Event Grid Viewer a měla by se ProductCreated
zobrazit událost. Výběrem tlačítka vedle události zobrazíte podrobnosti.
Schéma událostí služby Event Grid
Data událostí služby API Management zahrnují resourceUri
data , která identifikuje prostředek služby API Management, který událost aktivoval. Podrobnosti o schématu zpráv událostí služby API Management najdete v dokumentaci ke službě Event Grid:
Schéma událostí služby Azure Event Grid pro API Management
Další kroky
- Přečtěte si další informace o přihlášení k odběru událostí.