Recapitare eventi a Hub eventi di Azure usando argomenti dello spazio dei nomi - Portale di Azure
L’articolo fornisce istruzioni dettagliate su come pubblicare eventi in Griglia di eventi di Azure in formato JSON CloudEvents e recapitarli usando il modello di recapito push.
Per la precisione, si useranno il portale di Azure e Curl per pubblicare eventi in un argomento dello spazio dei nomi in Griglia di eventi ed eseguire il push di tali eventi da una sottoscrizione eventi a una destinazione del gestore di Hub eventi. Per ulteriori informazioni sul modello di recapito push, vedere Panoramica del recapito push.
Se non si ha una sottoscrizione di Azure, creare un account Azure gratuito prima di iniziare.
Creare uno spazio dei nomi di Griglia di eventi
Uno spazio dei nomi di Griglia di eventi fornisce un endpoint definito dall'utente a cui gli eventi vengono pubblicati. L'esempio seguente crea uno spazio dei nomi nel gruppo di risorse usando Bash in Azure Cloud Shell. Il nome dello spazio dei nomi deve essere univoco, poiché fa parte di una voce Domain Name System (DNS).
Passare al portale di Azure.
Nella barra di ricerca dell'argomento, digitare
Event Grid Namespaces
e selezionareEvent Grid Namespaces
tra i risultati.Nella pagina Spazi dei nomi di Griglia di eventi, selezionare + Crea sulla barra dei comandi.
Nella pagina Crea spazio dei nomi, seguire questa procedura:
- Selezionare la sottoscrizione di Azure in cui creare lo spazio dei nomi.
- Creare un nuovo gruppo di risorse selezionando Crea nuovo o selezionare un gruppo di risorse esistente.
- Immettere un nome per lo spazio dei nomi.
- Selezionare il percorso in cui si vuole creare il gruppo di risorse.
- Quindi selezionare Rivedi e crea.
- Nella pagina Rivedi e crea selezionare Crea.
Nella pagina Distribuzione, selezionare Vai alla risorsa dopo che la distribuzione è stata completata con successo.
Ottenere la chiave di accesso
- Nella pagina Spazio dei nomi di Griglia di eventi, selezionare Chiavi di accesso nel menu a sinistra.
- Selezionare il pulsante copia accanto alla chiave di accesso.
- Salvare la chiave di accesso da qualche parte. perché verrà usato in seguito.
Abilitare l'identità gestita per lo spazio dei nomi di Griglia di eventi
Abilitare l'identità gestita assegnata dal sistema nello spazio dei nomi di Griglia di eventi. Per recapitare eventi agli hub eventi nello spazio dei nomi di Hub eventi usando l'identità gestita, seguire questa procedura:
- Abilitare l'identità gestita assegnata dal sistema o dall'utente: spazi dei nomi. Continuare a leggere la sezione successiva per informazioni su come abilitare l'identità gestita usando l'interfaccia della riga di comando di Azure.
- Aggiungere l'identità al ruolo Mittente dati di Hub eventi di Azure nello spazio dei nomi di Hub eventi; continuare a leggere la sezione successiva per scoprire come aggiungere l'assegnazione di ruolo.
- Configurare la sottoscrizione eventi che usa un hub eventi come endpoint per usare l'identità gestita assegnata dal sistema o dall'utente.
In questa sezione, si abiliterà un'identità gestita assegnata dal sistema nello spazio dei nomi. Gli altri passaggi saranno effettuati più avanti in questo avvio rapido.
Nella pagina Spazio dei nomi di Griglia di eventi, selezionare Identità nel menu a sinistra.
Nella pagina Identità, selezionare Attivata come Stato.
Nella barra dei comandi, seleziona Salva.
Creare un argomento nello spazio dei nomi
Creare un argomento volto a contenere tutti gli eventi pubblicati nell'endpoint dello spazio dei nomi.
- Selezionare Argomenti nel menu a sinistra.
- Nella pagina Argomenti, selezionare + Argomento sulla barra dei comandi.
- Nella pagina Crea argomento procedere come segue:
Creare uno spazio dei nomi di Hub eventi
Creare una risorsa di Hub eventi usata come destinazione del gestore per la sottoscrizione del recapito push dell'argomento dello spazio dei nomi. Eseguire questi passaggi in un’altra scheda del browser Internet o in un’altra finestra. Passare al portale di Azure e accedere usando le stesse credenziali usate in precedenza e la stessa sottoscrizione di Azure.
- Digitare Hub eventi nella barra di ricerca e selezionare Hub eventi.
- Nella pagina Hub eventi, selezionare + Crea sulla barra dei comandi.
- Nella pagina Crea spazio dei nomi, seguire questa procedura:
- Selezionare la sottoscrizione di Azure usata per creare lo spazio dei nomi di Griglia di eventi.
- Selezionare il gruppo di risorse usato in precedenza.
- Immettere un nome per lo spazio dei nomi di Hub eventi.
- Selezionare la stessa posizione usata per lo spazio dei nomi di Griglia di eventi.
- Selezionare Basic come piano tariffario.
- Selezionare Rivedi e crea.
- Nella pagina Rivedi selezionare Crea.
- Nella pagina Distribuzione, selezionare Vai alla risorsa dopo che la distribuzione è stata completata con successo.
Aggiungere un'identità gestita di Griglia di eventi al ruolo Mittente dati di Hub eventi
- Nella pagina Spazio dei nomi di Hub eventi, selezionare Controllo di accesso (IAM) nel menu a sinistra.
- Selezionare Aggiungi ->Aggiungi assegnazione di ruolo sulla barra dei comandi.
- Nella pagina Aggiungi assegnazione di ruolo, cercare Mittente dati di Hub eventi e selezionare Mittente dati di Hub eventi di Azure nell'elenco dei ruoli, quindi selezionare Avanti.
- Nella scheda Membri, selezionare Identità gestita per il tipo e quindi + Seleziona membri.
- Nella pagina Seleziona identità gestite, selezionare Spazio dei nomi di Griglia di eventi per l'identità gestita e quindi selezionare l'identità gestita con lo stesso nome dello spazio dei nomi di Griglia di eventi.
- Nella pagina Seleziona identità gestite, scegliere Seleziona.
- Nella pagina Aggiungi assegnazione di ruolo, selezionare Rivedi e assegna.
- Nella pagina Rivedi + assegna, selezionare Rivedi + assegna.
Creare un hub eventi
- Nella pagina dello spazio dei nomi di Hub eventi, selezionare Hub eventi nel menu a sinistra.
- Nella pagina Hub eventi, selezionare + Hub eventi sulla barra dei comandi.
- Nella pagina Crea hub eventi, immettere un nome per l'hub eventi e quindi selezionare Rivedi e crea.
- Nella pagina Rivedi e crea selezionare Crea.
Creare una sottoscrizione di eventi
Creare una sottoscrizione eventi impostando la modalità di recapito su Push, la quale supporta il recapito push.
- Passare alla scheda o finestra con la pagina Spazio dei nomi Griglia di eventi aperta dalla scheda o finestra con la pagina Spazio dei nomi di Hub eventi aperta.
- Nella pagina Spazio dei nomi Griglia di eventi, selezionare Argomenti nel menu a sinistra.
- Nella pagina Argomenti, selezionare l'argomento creato nel passaggio precedente.
- Selezionare + Sottoscrizione sulla barra dei comandi.
- Nella pagina Crea sottoscrizione di eventi procedere come segue:
- Nella scheda Basic, immettere un nome per la sottoscrizione eventi.
- Selezionare Push come modalità di recapito degli eventi.
- Verificare che l’Hub eventi sia selezionato come Tipo di endpoint.
- Selezionare Configura un endpoint.
- Nella pagina Seleziona hub eventi, seguire questa procedura:
- Nella pagina Crea sottoscrizione. selezionare Assegnata dal sistema come Tipo di identità gestita.
- Seleziona Crea.
Inviare eventi all'argomento
Ora, inviare un evento campione all'argomento dello spazio dei nomi seguendo la procedura descritta in questa sezione.
Avviare Cloud Shell nel portale di Azure. Passare a Bash.
In Cloud Shell, eseguire il comando seguente per dichiarare una variabile che contenga la chiave di accesso per lo spazio dei nomi. La chiave di accesso è stata annotata in precedenza durante questo avvio rapido.
key=ACCESSKEY
Dichiarare una variabile per contenere l'URI dell'operazione di pubblicazione. Sostituire
NAMESPACENAME
con il nome dello spazio dei nomi di Griglia di eventi eTOPICNAME
con il nome dell'argomento.publish_operation_uri=https://NAMESPACENAME.eastus-1.eventgrid.azure.net/topics/TOPICNAME:publish?api-version=2023-06-01-preview
Creare un evento campione conforme a CloudEvents:
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"}} '
L'elemento
data
è il payload dell'evento. Questo campo accetta qualsiasi JSON ben formato. Per ulteriori informazioni sulle proprietà, note anche come attributi di contesto, che è possibile includere in un evento, vedere le specifiche di CloudEvents.Usare CURL per inviare l'evento all'argomento. CURL è un'utilità che invia richieste HTTP.
curl -X POST -H "Content-Type: application/cloudevents+json" -H "Authorization:SharedAccessKey $key" -d "$event" $publish_operation_uri
Passare alla pagina Spazio dei nomi di Hub eventi nel portale di Azure, aggiornare la pagina e verificare che il contatore dei messaggi in arrivo nel grafico indichi che è stato ricevuto un evento.
Passaggi successivi
In questo articolo sono stati creati e configurati lo spazio dei nomi di Griglia di eventi e le risorse di Hub eventi. Per istruzioni dettagliate su come ricevere eventi da un hub eventi, vedere queste esercitazioni: