Megosztás a következőn keresztül:


Események továbbítása webhookok számára névtértémák használatával – Azure Portal (előzetes verzió)

A cikk részletes útmutatást nyújt az események CloudEvents JSON formátumban történő közzétételéhez az Azure Event Gridben, és ezeket az eseményeket a leküldéses kézbesítési modell használatával kézbesítheti. Konkrétan közzé kell tennie az eseményeket egy névtér témakörében az Event Gridben, és le kell küldenie ezeket az eseményeket egy esemény-előfizetésből egy webhookkezelő célhelyre. A leküldéses kézbesítési modellről további információt a leküldéses kézbesítés áttekintésében talál.

Feljegyzés

Az Azure Event Grid-névterek jelenleg támogatják a közös hozzáférésű jogosultságkódok (SAS) jogkivonatát és a hozzáférési kulcsok hitelesítését.

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

Event Grid-névtér létrehozása

Az Event Grid-névtér egy felhasználó által definiált végpontot biztosít, amelyre az eseményeket közzéteheti. Az alábbi példa létrehoz egy névteret az erőforráscsoportban a Bash használatával az Azure Cloud Shellben. A névtér nevének egyedinek kell lennie, mert egy DNS-bejegyzés része.

  1. Lépjen az Azure Portalra.

  2. A témakör keresősávjában írja be Event Grid Namespaces, majd válassza ki Event Grid Namespaces a találatokat.

    Képernyőkép az Azure Portal keresősávjáról.

  3. Az Event Grid-névterek lapon válassza a + Létrehozás lehetőséget a parancssávon. Képernyőkép az Event Grid-névterek lapról, a kijelölt parancssáv Létrehozás gombjával.

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

    1. Válassza ki azt az Azure-előfizetést , amelyben létre szeretné hozni a névteret.
    2. Hozzon létre egy új erőforráscsoportot az Új létrehozása vagy egy meglévő erőforráscsoport kiválasztásával.
    3. Adja meg a névtér nevét.
    4. Válassza ki azt a helyet , ahol létre szeretné hozni az erőforráscsoportot.
    5. Ezután válassza a Véleményezés + létrehozás lehetőséget.
      Képernyőkép a Névtér létrehozása lapról.
    6. A Véleményezés + létrehozás lapon válassza a Létrehozás lehetőséget.
  5. Az Üzembe helyezés lapon válassza az Erőforrás megnyitása a sikeres üzembe helyezés után lehetőséget.

A hozzáférési kulcs lekérése

  1. Az Event Grid Névtér lapján válassza az Access-kulcsokat a bal oldali menüben.
  2. Válassza a másolás gombot a hozzáférési kulcs mellett. Képernyőkép az Event Grid Névterek lapjáról, amelyen az Access-kulcsok lap van kijelölve.
  3. Mentse a hozzáférési kulcsot valahol. A rövid útmutató későbbi részében használhatja.

Témakör létrehozása a névtérben

Hozzon létre egy témakört, amely a névtérvégponton közzétett összes eseményt tartalmazza.

  1. Válassza a bal oldali menü Témakörök elemét.
  2. A Témakörök lapon válassza a + Témakör lehetőséget a parancssávon. Képernyőkép a Témakörök lapról.
  3. A Témakör létrehozása lapon kövesse az alábbi lépéseket:
    1. Adja meg a témakör nevét.
    2. Válassza a Létrehozás lehetőséget.
      Képernyőkép a Témakör létrehozása lapról.

Üzenetvégpont létrehozása

Mielőtt feliratkozik az eseményekre, hozzuk létre az eseményüzenet végpontját. 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 megoldásnak az előfizetésébe való telepítéséhez válassza az Üzembe helyezés az Azure-ban lehetőséget.

    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álassza ki a tárfiók létrehozásakor létrehozott erőforráscsoportot. Az oktatóanyag elvégzése után az erőforráscsoport törlésével egyszerűbb lesz a tisztítás.

    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 végrehajtása néhány percet vesz igénybe. Az Üzembe helyezés lapon válassza az Ugrás az erőforráscsoportra lehetőséget.

    Képernyőkép az üzembe helyezés sikerességével foglalkozó lapról, amelyen az erőforráscsoportra mutató hivatkozás látható.

  5. Az Erőforráscsoport lapon, az erőforrások listájában válassza ki a létrehozott webalkalmazást. Az App Service-csomag és a tárfiók is megjelenik ebben a listában.

    Képernyőkép az erőforráscsoportban lévő webalkalmazás kiválasztásáról.

  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 a webalkalmazásra való navigálásra szolgáló hivatkozás kiválasztásáról.

  7. Győződjön meg arról, hogy látja a webhelyet, de még nincsenek közzétéve események.

    Képernyőkép egy új webhelyről.

    Fontos

    Tartsa nyitva az Azure Event Grid Viewer ablakát, hogy az események megjelenhessenek a közzétételük során.

Esemény-előfizetés létrehozása

Hozzon létre egy esemény-előfizetést, amely leküldéses kézbesítést támogató kézbesítési módot állít be.

  1. Váltson arra a lapra vagy ablakra, amelyen az Event Grid Névtér lapja meg van nyitva a lapról vagy az ablakból, és meg van nyitva az Event Hubs Névtér lapja.
  2. Az Event Grid Névtér lapján válassza a bal oldali menü Témakörök elemét.
  3. A Témakörök lapon válassza ki az előző lépésben létrehozott témakört.
  4. Válassza a +Előfizetés lehetőséget a parancssávon. Képernyőkép a Témakör lapról, amelyen az Előfizetés létrehozása gomb van kiválasztva.
  5. Az Esemény-előfizetés létrehozása lapon kövesse az alábbi lépéseket:
    1. Az Alapszintű lapon adja meg az esemény-előfizetés nevét.

    2. Válassza a Leküldés lehetőséget az eseménykézbesítési módhoz.

    3. Végponttípus esetén válassza a Web Hook lehetőséget.

    4. Válassza a Végpont konfigurálása lehetőséget.

      Képernyőkép az Előfizetés létrehozása lapról, amelyen a Leküldés van kiválasztva a kézbesítési módhoz és a WebHook végponttípusként.

    5. A Web Hook lapon adja meg a végpontot (például: https://spegridsite0520.azurewebsites.net/api/updates) az alábbi példában látható módon, és válassza a Kijelölés megerősítése lehetőséget.

      Képernyőkép a webhook lapról az előfizetői végpont értékével.

    6. Az Előfizetés létrehozása lapon válassza a Létrehozás lehetőséget.

      Képernyőkép az Előfizetés létrehozása lapról, amelyen az összes mező ki van töltve.

Események küldése a témakörbe

Most küldjön egy mintaeseményt a névtér témakörébe az ebben a szakaszban ismertetett lépések végrehajtásával.

Változók deklarálása

  1. Indítsa el a Cloud Shellt az Azure Portalon. Váltson Bash-re.

    Képernyőkép a Cloud Shellről.

  2. Futtassa a következő parancsot egy változó deklarálásához az erőforráscsoport nevének tárolásához. Cserélje le RESOUREGROUPNAME az Azure-erőforráscsoport nevére.

    resource_group=RESOURCEGROUPNAME
    
  3. A Cloud Shellben futtassa a következő parancsot egy változó deklarálásához a névtérnév tárolásához. Cserélje le NAMESPACENAME az Event Grid-névtér nevére.

    namespace=NAMESPACENAME
    
  4. Futtassa a következő parancsot egy változó deklarálásához a korábban feljegyzett hozzáférési kulcs értékének tárolásához. Cserélje le ACCESSKEY az Event Grid-névtér hozzáférési kulcsának értékére.

    key=ACCESSKEY
    
  5. A Cloud Shellben futtassa a következő parancsot egy változó deklarálásához a névtérnév tárolásához.

    topic=TOPICNAME
    

Esemény közzététele

  1. Kérje le a névtér állomásnevét. A névtér HTTP-végpontjának megírására használja, amelybe az eseményeket küldi. A következő műveletek először az API-verzióval 2023-06-01-previewvoltak elérhetők. A gazdagépnevet az Event Grid-névtér Áttekintés oldaláról is lekérheti az Azure Portalon.

    publish_operation_uri="https://"$(az eventgrid namespace show -g $resource_group -n $namespace --query "topicsConfiguration.hostname" --output tsv)"/topics/"$topic:publish?api-version=2023-06-01-preview
    
  2. Hozzon létre egy CloudEvents-kompatibilis mintaeseményt:

    event=' { "specversion": "1.0", "id": "'"$RANDOM"'", "type": "com.yourcompany.order.ordercreatedV2", "source" : "/mycontext", "subject": "orders/O-234595", "time": "'`date +%Y-%m-%dT%H:%M:%SZ`'", "datacontenttype" : "application/json", "data":{ "orderId": "O-234595", "url": "https://yourcompany.com/orders/o-234595"}} '
    

    Az data elem az esemény hasznos adatai. Bármilyen, megfelelően formált JSON megadható ebben a mezőben. Az eseményben használható tulajdonságokról (más néven környezetattribútumokról) a CloudEvents specifikációiban talál további információt.

  3. A CURL használatával küldje el az eseményt a témakörnek. A CURL egy olyan segédprogram, amely HTTP-kéréseket küld.

    curl -X POST -H "Content-Type: application/cloudevents+json" -H "Authorization:SharedAccessKey $key" -d "$event" $publish_operation_uri
    

Ellenőrizze, hogy az Azure Event Grid Viewer megkapta-e az eseményt

Ellenőrizze, hogy az Azure Event Grid Viewer webalkalmazás megjeleníti-e az Event Gridtől kapott eseményeket.

Képernyőkép az Azure Event Grid-megjelenítőről egy fogadott mintával.

Ebben a rövid útmutatóban egy webhookot használt eseménykezelőként. Az Azure-eseményközpontot eseménykezelőként használó rövid útmutatóért tekintse meg az Események kézbesítése az Azure Event Hubsba névtértémák használatával című témakört.