Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
GÄLLER FÖR: Förbrukning | Utvecklare | Grundläggande | Standard | Premie
API Management integreras med Azure Event Grid så att du kan skicka händelsemeddelanden till andra tjänster och utlösa underordnade processer. Event Grid är en fullständigt hanterad händelseroutningstjänst som använder en publicera-prenumerera-modell. Event Grid har inbyggt stöd för Azure-tjänster som Azure Functions och Azure Logic Apps, och du kan skicka händelseaviseringar till tjänster utanför Azure med hjälp av webhooks.
Du kan prenumerera på följande typer av API Management-händelser:
- Kontrollplanshändelser: Dessa händelser genereras när du skapar, uppdaterar eller tar bort vissa API Management-resurser. Du kan till exempel få en händelse när en ny användare eller ny produkt skapas i din API Management-instans.
- Dataplanshändelser (förhandsversion): Dessa händelser genereras under driften av API Management-gatewayen. API Management kan för närvarande generera händelser för serverdelskretsbrytare och för livscykeln för åtkomsttoken för lokalt installerad gateway.
En fullständig lista över tillgängliga händelser finns i Event Grid-schemat för API Management.
Om du till exempel använder integrering med Event Grid kan du skapa ett program som uppdaterar en databas, skapar ett faktureringskonto och skickar ett e-postmeddelande varje gång en användare läggs till i DIN API Management-instans.
I den här artikeln prenumererar du på Event Grid-händelser i din API Management-instans, utlöser händelser och skickar händelserna till en slutpunkt som bearbetar data. För att hålla det enkelt skickar du händelser till en exempelwebbapp som samlar in och visar meddelandena:
Förutsättningar
Använd Bash-miljön i Azure Cloud Shell. Mer information finns i Kom igång med Azure Cloud Shell.
Om du föredrar att köra CLI-referenskommandon lokalt installerar du Azure CLI. Om du kör i Windows eller macOS kan du köra Azure CLI i en Docker-container. Mer information finns i Så här kör du Azure CLI i en Docker-container.
Om du använder en lokal installation loggar du in på Azure CLI med hjälp av kommandot az login. Slutför autentiseringsprocessen genom att följa stegen som visas i terminalen. Andra inloggningsalternativ finns i Autentisera till Azure med Azure CLI.
När du uppmanas att installera Azure CLI-tillägget vid första användningen. Mer information om tillägg finns i Använda och hantera tillägg med Azure CLI.
Kör az version om du vill hitta versionen och de beroende bibliotek som är installerade. Om du vill uppgradera till den senaste versionen kör du az upgrade.
- Om du inte redan har en API Management-tjänst slutför du följande snabbstart: Skapa en Azure API Management-instans
- Aktivera en systemtilldelad hanterad identitet i din API Management-instans.
- Skapa en resursgrupp om du inte har någon som du vill distribuera exempelslutpunkten i.
Skapa en händelseslutpunkt
I det här avsnittet använder du en Resource Manager-mall för att distribuera ett fördefinierad exempelwebbprogram till Azure App Service. Senare prenumererar du på API Management-instansens Event Grid-händelser och anger den här appen som den slutpunkt som händelserna skickas till.
Om du vill distribuera exempelappen kan du använda Azure CLI, Azure PowerShell eller Azure Portal. I följande exempel används kommandot az deployment group create i Azure CLI.
Ange
RESOURCE_GROUP_NAMEnamnet på en befintlig resursgruppAnge
SITE_NAMEett unikt namn för webbappenWebbplatsnamnet måste vara unikt i Azure eftersom det ingår i webbappens fullständigt kvalificerade domännamn (FQDN). I ett senare avsnitt navigerar du till appens FQDN i en webbläsare för att visa händelserna.
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
När distributionen har slutförts (det kan ta några minuter) öppnar du en webbläsare och går till webbappen för att kontrollera att den körs:
https://<your-site-name>.azurewebsites.net
Du bör se exempelappen renderad utan att några händelsemeddelanden visas.
Registrera Event Grid-resursleverantör
Om du inte har använt Event Grid tidigare måste du registrera Event Grid-resursprovidern. Om du har använt Event Grid tidigare går du vidare till nästa avsnitt.
Gör följande i Azure Portal:
Välj Prenumerationer på den vänstra menyn.
Välj den prenumeration som du vill använda för Event Grid i prenumerationslistan.
På sidan Prenumeration väljer du Resursprovidrar under Inställningar på den vänstra menyn.
Sök efter Microsoft.EventGrid och bekräfta att statusen är inte registrerad.
Välj Microsoft.EventGrid i providerlistan.
Välj Registrera i kommandofältet.
Uppdatera för att kontrollera att statusen för Microsoft.EventGrid har ändrats till Registrerad.
Prenumerera på API Management-händelser
I Event Grid prenumererar du på ett ämne för att berätta vilka händelser du vill spåra och var de ska skickas. Här skapar du en prenumeration på händelser i DIN API Management-instans.
I Azure Portal navigerar du till din API Management-instans.
Välj Händelser > + händelseprenumeration.
På fliken Grundläggande :
- Ange ett beskrivande namn för händelseprenumerationen.
- I Händelsetyper väljer du en eller flera API Management-händelsetyper som ska skickas till Event Grid. I exemplet i den här artikeln väljer du minst Microsoft.APIManagement.ProductCreated
- I Slutpunktsinformation väljer du händelsetypen Web Hook , klickar på Välj en slutpunkt och anger webbadressen till webbappen följt av
api/updates. Exempel:https://myapp.azurewebsites.net/api/updates. - Välj Bekräfta val.
Låt inställningarna vara kvar på de återstående flikarna med standardvärdena och välj sedan Skapa.
Utlösa och visa händelser
Nu när exempelappen är igång och du har prenumererat på din API Management-instans med Event Grid är du redo att generera händelser.
Skapa till exempel en produkt i din API Management-instans. Om händelseprenumerationen innehåller händelsen Microsoft.APIManagement.ProductCreated utlöser skapandet av produkten en händelse som skickas till webbappens slutpunkt.
Gå till din Event Grid Viewer-webbapp så bör du se händelsen. Välj knappen bredvid händelsen för att visa informationen.
Event Grid-händelseschema
API Management-händelsedata innehåller resourceUri, som identifierar API Management-resursen som utlöste händelsen. Mer information om API Management-händelsemeddelandeschemat finns i Event Grid-dokumentationen:
Azure Event Grid-händelseschema för API Management
Relaterat innehåll
- Läs mer om att prenumerera på händelser.