Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Dans ce guide de démarrage rapide, vous allez utiliser Azure CLI pour créer une rubrique personnalisée Event Grid et un abonnement Event Hubs pour cette rubrique. Ensuite, vous enverrez des exemples d’événements à la rubrique personnalisée et vérifierez que ces événements sont remis à un hub d’événements.
Azure Event Grid est un répartiteur d’événements serverless très évolutif permettant d’intégrer des applications par le biais d’événements. Event Grid remet des événements à des gestionnaires d’événements pris en charge, tels qu’Azure Event Hubs. Gestionnaires d’événements.
Si vous ne disposez pas d’un compte Azure, créez-en un gratuitement avant de commencer.
Créer un groupe de ressources
Les rubriques Event Grid sont des ressources Azure. Créez-les dans un groupe de ressources Azure. Le groupe de ressources est une collection logique dans laquelle les ressources Azure sont déployées et gérées.
Créez un groupe de ressources avec la commande az group create. L’exemple suivant crée un groupe de ressources nommé gridResourceGroup
à l’emplacement westus2
.
Sélectionnez Ouvrir Cloud Shell pour ouvrir Azure Cloud Shell dans le volet droit. Sélectionnez le bouton Copier pour copier la commande, collez-la dans Cloud Shell, puis sélectionnez la touche Entrée pour exécuter la commande.
az group create --name gridResourceGroup --location westus2
Activer le fournisseur de ressources Event Grid
Si c’est la première fois que vous utilisez Event Grid dans votre abonnement Azure, vous devrez peut-être inscrire le fournisseur de ressources Event Grid. Exécutez la commande suivante pour enregistrer le fournisseur :
az provider register --namespace Microsoft.EventGrid
L’inscription peut prendre un certain temps. Pour vérifier l'état, exécutez la commande suivante :
az provider show --namespace Microsoft.EventGrid --query "registrationState"
Lorsque
registrationState
estRegistered
, vous êtes prêt à continuer.
Créer une rubrique personnalisée
Une rubrique Event Grid fournit un point de terminaison défini par l’utilisateur vers lequel vous envoyez vos événements. L’exemple suivant permet de créer la rubrique personnalisée dans votre groupe de ressources.
Remplacez <TOPIC NAME>
par un nom unique pour votre rubrique personnalisée. Le nom de la rubrique Event Grid doit être unique, car une entrée DNS (Domain Name System) la représente.
Donnez un nom à la rubrique :
topicname="<TOPIC NAME>"
Exécutez la commande suivante pour créer la rubrique :
az eventgrid topic create --name $topicname --location westus2 --resource-group gridResourceGroup
Créer un hub d’événements
Avant de vous abonner à la rubrique personnalisée, créez le point de terminaison pour le message de l’événement. Vous créez un concentrateur d’événements afin de collecter les événements.
Donnez un nom unique à l’espace de noms Event Hubs :
namespace="<EVENT HUBS NAMESPACE NAME>"
Exécutez les commandes suivantes pour créer un espace de noms Event Hubs et un hub d’événements nommé
demohub
dans cet espace de noms :hubname=demohub az eventhubs namespace create --name $namespace --resource-group gridResourceGroup az eventhubs eventhub create --name $hubname --namespace-name $namespace --resource-group gridResourceGroup
S’abonner à une rubrique personnalisée
Vous vous abonnez à une rubrique Event Grid pour indiquer aux événements que vous souhaitez suivre. L’exemple suivant s’abonne à la rubrique personnalisée que vous avez créée. Il transmet l’ID de ressource du hub d’événements pour le point de terminaison. Le point de terminaison est au format suivant :
/subscriptions/<AZURE SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP NAME>/providers/Microsoft.EventHub/namespaces/<NAMESPACE NAME>/eventhubs/<EVENT HUB NAME>
Le script suivant obtient l’ID de ressource du hub d’événements, et s’abonne à une rubrique Event Grid. Il définit le type de point de terminaison sur eventhub
et utilise l’ID du concentrateur d’événements comme point de terminaison.
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
Le compte qui crée l’abonnement à l’événement doit pouvoir accéder en écriture à l’Event Hub.
Envoyer un événement à votre rubrique personnalisée
Déclenchez un événement pour voir comment Event Grid distribue le message à votre point de terminaison. Tout d’abord, obtenez l’URL et la clé de la rubrique personnalisée :
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)
Par souci de simplicité, cet article utilise des exemples de données d’événement à envoyer à la rubrique personnalisée. En règle générale, une application ou un service Azure envoie les données d’événements.
L’outil cURL envoie des requêtes HTTP. Dans cet article, vous utilisez cURL pour envoyer l’événement à la rubrique personnalisée. L’exemple suivant envoie trois événements à la rubrique Event Grid :
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
Dans le portail Azure, la page Vue d’ensemble de votre espace de noms Event Hubs indique que Event Grid a envoyé ces trois événements au hub d’événements. Vous voyez le même graphique dans la page Vue d’ensemble de l’instance Event Hubs demohub
.
En général, vous créez une application qui récupère des messages d’événements à partir du hub d’événements. Pour plus d’informations, consultez l’article suivant :
- Envoyer des événements vers et recevoir des événements d’Azure Event Hubs à l’aide de .NET
- Recevoir des événements d’Azure Event Hubs à l’aide de Java
- Recevoir des événements d’Event Hubs à l’aide d’Apache Storm
Nettoyer les ressources
Si vous envisagez de continuer à utiliser cette rubrique personnalisée et cet abonnement, ne supprimez pas les ressources que vous avez créées dans cet article. Sinon, utilisez la commande suivante pour supprimer les ressources :
az group delete --name gridResourceGroup
Contenu connexe
Maintenant que vous savez créer des rubriques et des abonnements d’événements, vous pouvez en apprendre davantage sur Event Grid et ce qu’il peut vous offrir :
- À propos d’Event Grid
- Router des événements Stockage Blob Azure vers un point de terminaison web personnalisé
- Surveiller les modifications d’une machine virtuelle avec Azure Event Grid et Azure Logic Apps
- Migrer des données capturées par Event Hubs à partir du stockage Azure vers Azure Synapse Analytics
Pour en savoir plus sur la publication d’événements vers Event Grid et la consommation d’événements à partir d’Event Grid à l’aide de différents langages de programmation, consultez les exemples suivants :