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


Oktatóanyag: Egyéni események átirányítása hibrid Azure Relay-kapcsolatokhoz az Azure CLI és az Event Grid használatával

Az Azure Event Grid egy felhőalapú eseménykezelési szolgáltatás. A hibrid Azure Relay-kapcsolat az egyik támogatott eseménykezelő. A hibrid kapcsolatok eseménykezelőként való használatára akkor lehet szükség, ha olyan alkalmazásokból kell eseményeket kezelnie, amelyek nem rendelkeznek nyilvános végponttal. A vállalati hálózaton belül is lehetnek ilyen alkalmazások. Ebben a cikkben létrehozunk egy egyéni témakört az Azure CLI-vel, feliratkozunk az adott témakörre, majd elindítjuk az eseményt az eredmény megtekintéséhez. Az eseményeket hibrid kapcsolatokba küldjük.

Előfeltételek

  • Ehhez a cikkhez az Azure CLI 2.0.56-os vagy újabb verziója szükséges. Az Azure Cloud Shell használata esetén a legújabb verzió már telepítve van.

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.

az group create --name gridResourceGroup --location westus2

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

Az Event Grid-témakör egy felhasználó által definiált végpontot biztosít, amelyre 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.

az eventgrid topic create --name <topic_name> -l westus2 -g gridResourceGroup

Feliratkozás egyéni témakörre

Feliratkozhat 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 hibrid kapcsolatának erőforrás-azonosítóját. A hibrid kapcsolat azonosítója a következő formátumot követi:

/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Relay/namespaces/<relay-namespace>/hybridConnections/<hybrid-connection-name>

Az alábbi szkript lekéri a Relay-névtér erőforrás-azonosítóját. A hibrid kapcsolat azonosítóját hozza létre, és előfizet egy Event Grid-témakörre. A szkript a végpontot hybridconnection típusúra állítja be, és a hibrid kapcsolat azonosítóját használja végpontként.

relaynsname=<namespace-name>
relayrg=<resource-group-for-relay>
hybridname=<hybrid-name>

relayid=$(az relay namespace show --resource-group $relayrg --name $relaynsname --query id --output tsv)
hybridid="$relayid/hybridConnections/$hybridname"
topicid=$(az eventgrid topic show --name <topic_name> -g gridResourceGroup --query id --output tsv)

az eventgrid event-subscription create \
  --source-resource-id $topicid \
  --name <event_subscription_name> \
  --endpoint-type hybridconnection \
  --endpoint $hybridid \
  --expiration-date "<yyyy-mm-dd>"

Vegye figyelembe, hogy az előfizetéshez lejárati dátum tartozik.

Alkalmazás létrehozása események feldolgozásához

Olyan alkalmazásra van szüksége, amely eseményeket tud lekérni a hibrid kapcsolatból. Ezt a műveletet a Microsoft Azure Event Grid hibrid kapcsolat C# fogyasztói mintája hajtja végre. Már befejezte az előfeltételként felsorolt lépéseket.

  1. Győződjön meg arról, hogy a Visual Studio 2019-et vagy újabb verziót használja.

  2. Klónozza az adattárat a helyi gépre.

  3. Töltse be a HybridConnectionConsumer projektet a Visual Studióban.

  4. A Program.cs fájlban cserélje le a <relayConnectionString> és <hybridConnectionName> elemeket a továbbítási kapcsolat sztringjére és a létrehozott hibrid kapcsolatra.

  5. Fordítsa és futtassa az alkalmazást a Visual Studióból.

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

Aktiváljunk egy eseményt, és lássuk, hogyan küldi el az üzenetet az Event Grid a végpontnak. Ez a cikk bemutatja, hogyan aktiválhatja az eseményt az Azure CLI használatával. Használhatja az Event Grid közzétételi alkalmazást is.

Először szükségünk lesz az egyéni témakör URL-címére és kulcsára. A <topic_name> helyett használja ismét az egyéni témakör nevét.

endpoint=$(az eventgrid topic show --name <topic_name> -g gridResourceGroup --query "endpoint" --output tsv)
key=$(az eventgrid topic key list --name <topic_name> -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.

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

A figyelőalkalmazásnak meg kell kapnia az eseményüzenetet.

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: