Share via


Egyéni események átirányítása webes végpontra az Azure Portallal és az Azure Event Griddel

Az Event Grid egy teljes mértékben felügyelt szolgáltatás, amely lehetővé teszi az események egyszerű kezelését számos különböző Azure-szolgáltatásban és alkalmazásban. Leegyszerűsíti az eseményvezérelt és kiszolgáló nélküli alkalmazások létrehozását. A szolgáltatás áttekintését az Event Grid áttekintésében tekintheti meg.

Ebben a cikkben az Azure Portalon hajtja végre a következő feladatokat:

  1. Hozzon létre egy egyéni témakört.
  2. Iratkozzon fel az egyéni témakörre.
  3. Aktiválja az eseményt.
  4. Az eredmény megtekintése. Általában olyan végpontoknak szoktunk eseményeket küldeni, amelyek eseményadatokat dolgoznak fel és műveleteket hajtanak végre. A cikk egyszerűsítése érdekében azonban az eseményeket egy olyan webalkalmazásnak küldjük el, amely az üzenetek gyűjtésével és megjelenítésével foglalkozik.

Előfeltételek

Ha nem rendelkezik Azure-előfizetéssel, első lépésként hozzon létre egy ingyenes Azure-fiókot.

Az Event Grid-erőforrás-szolgáltató regisztrálása

Ha korábban nem használta az Event Gridet, regisztrálnia kell az Event Grid-erőforrás-szolgáltatót. Ha korábban már használta az Event Gridet, ugorjon a következő szakaszra.

Az Azure Portalon hajtsa végre a következő lépéseket:

  1. A bal oldali menüben válassza az Előfizetések lehetőséget.

  2. Válassza ki az Event Gridhez használni kívánt előfizetést az előfizetési listából.

  3. Az Előfizetés lapon válassza az Erőforrás-szolgáltatóklehetőséget a bal oldali menü Gépház alatt.

  4. Keressen rá a Microsoft.EventGridre, és győződjön meg arról, hogy az állapotnincs regisztrálva.

  5. Válassza a Microsoft.EventGrid elemet a szolgáltatólistában.

  6. Válassza a Regisztráció lehetőséget a parancssávon.

    A Microsoft.EventGrid-szolgáltató Azure-előfizetéssel való regisztrációját bemutató kép.

  7. Frissítsen, hogy a Microsoft.EventGrid állapota regisztrálva legyen.

    A Microsoft.EventGrid szolgáltató sikeres regisztrációját ábrázoló kép az Azure-előfizetéssel.

Egyéni témakör létrehozása

Az Event Grid-témakör egy felhasználó által definiált végpontot biztosít, amelybe az eseményeket közzéteheti.

  1. Jelentkezzen be az Azure portálra.

  2. A témakör keresősávján írja be az Event Grid-témaköröket, majd válassza ki az Event Grid-témaköröket a legördülő listából.

    Képernyőkép az Azure-port keresősávról az Event Grid-témakörök kereséséhez.

  3. Az Event Grid-témakörök lapon válassza a + Létrehozás lehetőséget az eszköztáron.

    Képernyőkép a Témakör létrehozása gombról az Event Grid-témakörök lapján.

  4. A Témakör létrehozása lapon kövesse az alábbi lépéseket:

    1. Válassza ki az Azure-előfizetését.

    2. Válasszon ki egy meglévő erőforráscsoportot, vagy válassza az Új létrehozása lehetőséget, és adja meg az erőforráscsoport nevét.

    3. Adjon egyedi nevet az egyéni témakörnek. A témakör nevének egyedinek kell lennie, mert a nevet egy DNS-bejegyzés képviseli. Ne a képen látható nevet használja. Ehelyett hozzon létre saját nevet – 3–50 karakter hosszúságúnak kell lennie, és csak a-z, A-Z, 0-9 és "-" értékeket kell tartalmaznia.

    4. Válassza ki az Event Grid-témakör helyét.

    5. Válassza a Véleményezés + létrehozás lehetőséget a lap alján.

      Témakör létrehozása lap

    6. A Témakör létrehozása lap Véleményezés + létrehozás lapján válassza a Létrehozás lehetőséget.

      Beállítások áttekintése és létrehozás

  5. Az üzembe helyezés sikerességét követően válassza az Erőforrás megnyitása lehetőséget a témakör Event Grid-témaköroldalának eléréséhez. Tartsa nyitva ezt a lapot. A rövid útmutató későbbi részében használhatja.

    Képernyőkép az Event Grid-témakör kezdőlapjáról.

    Feljegyzés

    A rövid útmutató egyszerűségéhez csak az Alapismeretek lapot fogja használni egy témakör létrehozásához. A hálózati, biztonsági és adattárolási beállítások a varázsló más oldalain való konfigurálásának részletes lépéseit az Egyéni témakör létrehozása című témakörben találja.

Üzenetvégpont létrehozása

Mielőtt létrehoz egy előfizetést az egyéni témakörhöz, hozzon létre egy végpontot az eseményüzenethez. A végpont általában az eseményadatok alapján hajt végre műveleteket. A rövid útmutató egyszerűsítése érdekében üzembe kell helyeznie egy előre összeállított webalkalmazást , amely megjeleníti az eseményüzeneteket. Az üzembe helyezett megoldás egy App Service-csomagot, egy App Service-webalkalmazást és egy, a GitHubról származó forráskódot tartalmaz.

  1. A cikkoldalon válassza az Üzembe helyezés az Azure-ban lehetőséget a megoldás előfizetésben való üzembe helyezéséhez. Az Azure Portalon adjon meg értékeket a paraméterekhez.

    Gomb a Resource Manager-sablon Azure-ban való üzembe helyezéséhez.

  2. Az Egyéni üzembe helyezés lapon hajtsa végre a következő lépéseket:

    1. Erőforráscsoport esetén válasszon ki egy meglévő erőforráscsoportot, vagy hozzon létre egy erőforráscsoportot.

    2. A Webhely neve mezőben adja meg a webalkalmazás nevét.

    3. Az üzemeltetési csomag neveként adja meg a webalkalmazás üzemeltetéséhez használni kívánt App Service-csomag nevét.

    4. Válassza az Áttekintés + létrehozás lehetőséget.

      Képernyőkép az Egyéni üzembe helyezés oldalról.

  3. A Véleményezés + létrehozás lapon válassza a Létrehozás lehetőséget.

  4. Az üzembe helyezés befejezése eltarthat néhány percig. Válassza a Riasztások (harang ikon) lehetőséget a portálon, majd válassza az Ugrás az erőforráscsoportra lehetőséget.

    Képernyőkép az erőforráscsoportra való navigálásra szolgáló hivatkozással rendelkező sikeres üzembe helyezési üzenetről.

  5. Az Erőforráscsoport lapon, az erőforrások listájában válassza ki a létrehozott webalkalmazást (az alábbi példában contosoegriviewer).

    Képernyőkép az Erőforráscsoport lapról az üzembe helyezett erőforrásokkal.

  6. A webalkalmazás App Service lapján válassza ki a webhelyre navigálni kívánt URL-címet. Az URL-címnek a következő formátumban kell lennie: https://<your-site-name>.azurewebsites.net.

    Képernyőkép az App Service-lapról, amelyen a webhelyre mutató hivatkozás van kiemelve.

  7. Győződjön meg arról, hogy látja a webhelyet, de még nem tettek közzé eseményeket.

    Képernyőkép az Event Grid Viewer mintaalkalmazásról.

Feliratkozás egyéni témakörre

Előfizethet egy Event Grid-témakörre, amelyből megtudhatja, hogy az Event Grid mely eseményeket szeretné nyomon követni, és hová szeretné elküldeni az eseményeket.

  1. Most az egyéni témakör Event Grid-témakör lapján válassza az eszköztár + Esemény-előfizetés lehetőséget.

    Esemény-előfizetés hozzáadása gomb

  2. Az Esemény-előfizetés létrehozása lapon kövesse az alábbi lépéseket:

    1. Adja meg az esemény-előfizetés nevét.

    2. Válassza a Web Hook lehetőséget a végponttípushoz.

    3. Válassza a Végpont kiválasztása lehetőséget.

      Esemény-előfizetés értékeinek megadása

    4. A webhook végponthoz adja meg a webalkalmazás URL-címét, és adja hozzá az api/updates elemet a kezdőlap URL-címéhez. Válassza a Kiválasztás megerősítése lehetőséget.

      Végpont URL-címének megadása

    5. Az Esemény-előfizetés létrehozása lapon válassza a Létrehozás lehetőséget.

  3. Tekints meg újra a webalkalmazást, ahol láthatja, hogy az fogadta az előfizetés érvényesítési eseményét. Az eseményadatok kibontásához kattintson a szem ikonra. Az Event Grid elküldi az érvényesítési eseményt, így a végpont megerősítheti, hogy eseményadatokat akar kapni. A webalkalmazás az előfizetés érvényesítéséhez szükséges kódot tartalmaz.

    Képernyőkép az Event Grid Viewer alkalmazásról az Előfizetés-érvényesített eseménysel.

Esemény elküldése a témakörbe

Most aktiváljunk egy eseményt, és lássuk, hogyan küldi el az üzenetet az Event Grid a végpontnak. Az Azure CLI vagy a PowerShell használatával küldjön teszteseményt az egyéni témakörbe. Egy alkalmazás vagy Azure-szolgáltatás általában eseményadatokat küld el.

Az első példa az Azure CLI-t használja. Ez lekéri az egyéni témakör URL-címét és kulcsát, valamint a mintául szolgáló eseményadatokat. A <topic name> helyett használja az egyéni témakör nevét. Ez mintául szolgáló eseményadatokat hoz létre. A JSON data eleme az esemény hasznos adata. Bármilyen, megfelelően formált JSON megadható ebben a mezőben. A speciális útválasztáshoz és szűréshez használhatja a tárgy mezőt is. A CURL egy olyan segédprogram, amely HTTP-kéréseket küld.

Azure CLI

  1. Az Azure Portalon válassza a Cloud Shellt. A Cloud Shell a webböngésző alsó paneljén nyílik meg.

    A Cloud Shell ikon kiválasztása

  2. Válassza a Bash lehetőséget a Cloud Shell ablakának bal felső sarkában.

    Képernyőkép a Cloud Shellről a bal felső sarokban kijelölt Bash használatával.

  3. Futtassa a következő parancsot a témakör végpontjának lekéréséhez: A parancs másolása és beillesztése után frissítse a témakör nevét és az erőforráscsoport nevét a parancs futtatása előtt. A mintaeseményeket közzéteheti ebben a témakörvégpontban.

    endpoint=$(az eventgrid topic show --name <topic name> -g <resource group name> --query "endpoint" --output tsv)
    
  4. Futtassa a következő parancsot az egyéni témakör kulcsának lekéréséhez: A parancs másolása és beillesztése után frissítse a témakör nevét és az erőforráscsoport nevét a parancs futtatása előtt. Ez az Event Grid-témakör elsődleges kulcsa. Ha le szeretné szerezni ezt a kulcsot az Azure Portalról, váltson az Event Grid-témakör lapJának Hozzáférési kulcsok lapjára. Ahhoz, hogy egy eseményt közzétehessen egy egyéni témakörbe, szüksége van a hozzáférési kulcsra.

    key=$(az eventgrid topic key list --name <topic name> -g <resource group name> --query "key1" --output tsv)
    
  5. Másolja ki a következő utasítást az eseménydefinícióval, és nyomja le az ENTER billentyűt.

    event='[ {"id": "'"$RANDOM"'", "eventType": "recordInserted", "subject": "myapp/vehicles/motorcycles", "eventTime": "'`date +%Y-%m-%dT%H:%M:%S%z`'", "data":{ "make": "Ducati", "model": "Monster"},"dataVersion": "1.0"} ]'
    
  6. Futtassa a következő Curl-parancsot az esemény közzétételéhez: A parancsban aeg-sas-key a fejléc a korábban kapott hozzáférési kulcsra van állítva.

    curl -X POST -H "aeg-sas-key: $key" -d "$event" $endpoint
    

Azure PowerShell

A második példa a PowerShell használatával hajtja végre a hasonló lépéseket.

  1. Az Azure Portalon válassza a Cloud Shellt (vagy lépjen a következőre https://shell.azure.com/). A Cloud Shell a webböngésző alsó paneljén nyílik meg.

    A Cloud Shell ikon kiválasztása

  2. A Cloud Shellben válassza a PowerShellt a Cloud Shell ablakának bal felső sarkában. Tekintse meg a Cloud Shell-mintaablak rendszerképét az Azure CLI szakaszban.

  3. Állítsa be a következő változókat. Az egyes parancsok másolása és beillesztése után frissítse a témakör nevét és az erőforráscsoport nevét a parancs futtatása előtt:

    Erőforráscsoport:

    $resourceGroupName = "<resource group name>"
    

    Event Grid-témakör neve:

    $topicName = "<topic name>"
    
  4. Futtassa a következő parancsokat a végpont és a témakör kulcsainak lekéréséhez:

    $endpoint = (Get-AzEventGridTopic -ResourceGroupName $resourceGroupName -Name $topicName).Endpoint
    $keys = Get-AzEventGridTopicKey -ResourceGroupName $resourceGroupName -Name $topicName
    
  5. Készítse elő az eseményt. Másolja és futtassa az utasításokat a Cloud Shell ablakban.

    $eventID = Get-Random 99999
    
    #Date format should be SortableDateTimePattern (ISO 8601)
    $eventDate = Get-Date -Format s
    
    #Construct body using Hashtable
    $htbody = @{
        id= $eventID
        eventType="recordInserted"
        subject="myapp/vehicles/motorcycles"
        eventTime= $eventDate   
        data= @{
            make="Ducati"
            model="Monster"
        }
        dataVersion="1.0"
    }
    
    #Use ConvertTo-Json to convert event body from Hashtable to JSON Object
    #Append square brackets to the converted JSON payload since they are expected in the event's JSON payload syntax
    $body = "["+(ConvertTo-Json $htbody)+"]"
    
  6. Az esemény elküldéséhez használja az Invoke-WebRequest parancsmagot.

    Invoke-WebRequest -Uri $endpoint -Method POST -Body $body -Headers @{"aeg-sas-key" = $keys.Key1}
    

Ellenőrzés az Event Grid-megjelenítőben

Ön kiváltotta az eseményt, az Event Grid pedig elküldte az üzenetet a feliratkozáskor konfigurált végpontnak. Tekintse meg a webalkalmazást az imént elküldött esemény megtekintéséhez.

Event Grid Viewer

Az erőforrások eltávolítása

Ha tovább kívánja használni az eseményt, akkor ne törölje a cikkben létrehozott erőforrásokat. Ellenkező esetben törölje a cikkben létrehozott erőforrásokat.

  1. Válassza az Erőforráscsoportok lehetőséget a bal oldali menüben. Ha nem látja a bal oldali menüben, válassza az Összes szolgáltatás lehetőséget a bal oldali menüben, és válassza az Erőforráscsoportok lehetőséget.

    Képernyőkép az Erőforráscsoportok lapról.

  2. Válassza ki az erőforráscsoportot az Erőforráscsoport lap elindításához.

  3. Válassza az eszköztárOn az Erőforráscsoport törlése lehetőséget.

  4. Erősítse meg a törlést az erőforráscsoport nevének megadásával, majd válassza a Törlés lehetőséget.

    A képen látható másik erőforráscsoportot a Cloud Shell ablak hozta létre és használta. Törölje, ha később nem tervezi használni a Cloud Shell-ablakot.

Következő lépések

Most, hogy megismerte, hogyan hozhat létre egyéni témaköröket és esemény-előfizetéseket, bővebben is tájékozódhat arról, hogy miben nyújthat segítséget az Event Grid:

Az alábbi példákból megtudhatja, hogyan tehet közzé eseményeket az Event Gridből különböző programozási nyelvek használatával, és hogyan használhatja az eseményeket.