Rövid útmutató: Egyéni események átirányítása az Azure Event Hubsba az Azure CLI és az Event Grid használatával
Az Azure Event Grid egy nagymértékben skálázható és kiszolgáló nélküli eseményszervező, amellyel alkalmazásokat integrálhat események használatával. Az Event Grid eseményeket biztosít a támogatott eseménykezelőknek , és az Azure Event Hubs is ilyen. Ebben a cikkben az Azure CLI-t használja a következő lépésekhez:
- Egyéni Event Grid-témakör létrehozása.
- Hozzon létre egy Azure Event Hubs-előfizetést az egyéni témakörhöz.
- Mintaesemények küldése az egyéni témakörbe.
- Ellenőrizze, hogy ezek az események az eseményközpontba érkeznek-e.
Ha nem rendelkezik Azure-előfizetéssel, első lépésként hozzon létre egy ingyenes Azure-fiókot.
Erőforráscsoport létrehozása
Az Event Grid-témakörök Azure-erőforrások, amelyeket egy Azure-erőforráscsoportba kell helyezni. Az erőforráscsoport egy olyan logikai gyűjtemény, amelyben a rendszer üzembe helyezi és kezeli az Azure-erőforrásokat.
Hozzon létre egy erőforráscsoportot az az group create paranccsal. A következő példában létrehozunk egy gridResourceGroup nevű erőforráscsoportot a westus2 helyen.
Feljegyzés
A Jobb oldali panelen a Cloud Shell elindításához válassza a CLI-példa melletti Kipróbálás lehetőséget. Kattintson a Másolás gombra a parancs másolásához, illessze be a Cloud Shell ablakába, majd nyomja le az ENTER billentyűt a parancs futtatásához.
az group create --name gridResourceGroup --location westus2
Az Event Grid-erőforrás-szolgáltató engedélyezése
Ha korábban nem használta az Event Gridet az Azure-előfizetésében, előfordulhat, hogy regisztrálnia kell az Event Grid-erőforrás-szolgáltatót. A szolgáltató regisztrálásához futtassa az alábbi parancsot:
az provider register --namespace Microsoft.EventGrid
Eltarthat egy ideig, amíg a regisztráció befejeződik. Az állapot ellenőrzéséhez futtassa a következő parancsot:
az provider show --namespace Microsoft.EventGrid --query "registrationState"
Ha a
registrationState
Registered
értékű, készen áll a folytatásra.
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. Az alábbi példa az erőforráscsoportban létrehozza az egyéni témakört. A <topic_name>
elemet cserélje le az egyéni témakör egyedi nevére. Az Event Grid-témakör nevének egyedinek kell lennie, mert egy DNS-bejegyzés jelöli.
Adja meg a témakör nevét.
topicname="<TOPIC NAME>"
A témakör létrehozásához futtassa az alábbi parancsot.
az eventgrid topic create --name $topicname -l westus2 -g gridResourceGroup
Eseményközpont létrehozása
Az egyéni témakörre való feliratkozás előtt hozzuk létre az eseményüzenet végpontját. Eseményközpontot hoz létre az események begyűjtéséhez.
Adjon meg egy egyedi nevet az Event Hubs-névtérhez.
namespace="<EVENT HUBS NAMESPACE NAME>"
Futtassa az alábbi parancsokat az Event Hubs-névtér és a névtérben elnevezett
demohub
eseményközpont létrehozásához.hubname=demohub az eventhubs namespace create --name $namespace --resource-group gridResourceGroup az eventhubs eventhub create --name $hubname --namespace-name $namespace --resource-group gridResourceGroup
Feliratkozás egyéni témakörre
Előfizethet egy Event Grid-témakörre, hogy elmondja az Event Gridnek, hogy mely eseményeket szeretné nyomon követni. Az alábbi példa feliratkozik a létrehozott egyéni témakörre, és átadja a végpont eseményközpontjának erőforrás-azonosítóját. A végpont formátuma a következő:
/subscriptions/<AZURE SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP NAME>/providers/Microsoft.EventHub/namespaces/<NAMESPACE NAME>/eventhubs/<EVENT HUB NAME>
Az alábbi szkript lekéri az eseményközpont erőforrás-azonosítóját, és előfizet egy Event Grid-témakörre. A végpontot eventhub
típusúra állítja be, és az Event Hub azonosítóját használja végpontként.
hubid=$(az eventhubs eventhub show --name $hubname --namespace-name $namespace --resource-group gridResourceGroup --query id --output tsv)
topicid=$(az eventgrid topic show --name $topicname -g gridResourceGroup --query id --output tsv)
az eventgrid event-subscription create \
--source-resource-id $topicid \
--name subtoeventhub \
--endpoint-type eventhub \
--endpoint $hubid
Az esemény-előfizetést létrehozó fióknak írási hozzáféréssel kell rendelkeznie az Event Hubhoz.
Esemény elküldése az egyéni témakörbe
Aktiváljunk egy eseményt, és lássuk, hogyan küldi el az üzenetet az Event Grid a végpontnak. Először szükségünk lesz az egyéni témakör URL-címére és kulcsára.
endpoint=$(az eventgrid topic show --name $topicname -g gridResourceGroup --query "endpoint" --output tsv)
key=$(az eventgrid topic key list --name $topicname -g gridResourceGroup --query "key1" --output tsv)
A folyamat leegyszerűsítése érdekében használjon mintául szolgáló eseményadatokat, amelyeket elküldhet az egyéni témakörbe. Egy alkalmazás vagy Azure-szolgáltatás általában eseményadatokat küld el. A CURL egy olyan segédprogram, amely HTTP-kéréseket küld. Ebben a cikkben a CURL használatával küldjük el az eseményt az egyéni témakörbe. Az alábbi példa három eseményt küld az Event Grid-témakörnek:
for i in 1 2 3
do
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"} ]'
curl -X POST -H "aeg-sas-key: $key" -d "$event" $endpoint
done
Az Event Hubs-névtér Áttekintés lapján az Azure Portalon figyelje meg, hogy az Event Grid elküldte ezt a három eseményt az eseményközpontnak. Ugyanez a diagram az Event Hubs-példány lap Áttekintés lapján demohub
látható.
Általában az eseményeket az eseményközpontból lekérő alkalmazást hoz létre. Az üzeneteket az eseményközpontból lekérő alkalmazások létrehozásáról lásd:
- Üzenetek fogadása az Event Processor Hosttal .NET Standardban – első lépések
- Események fogadása az Azure Event Hubsból a Java használatával
- Események fogadása az Event Hubsról az Apache Storm használatával
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 a következő paranccsal törölheti a cikkben létrehozott erőforrásokat.
az group delete --name gridResourceGroup
Következő lépések
Most, hogy megismerkedett vele, hogyan hozhat létre témaköröket és eseményfeliratkozásokat, bővebben is tájékozódhat arról, hogy miben nyújthat segítséget az Event Grid:
- Bevezetés az Event Grid használatába
- Azure Blob Storage-események átirányítása egyéni webes végpontra
- Virtuális gépek módosításainak monitorozása az Azure Event Grid és a Logic Apps segítségével
- Big Data típusú adatok streamelése adattárházba
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.
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: