Mulai cepat: Merutekan peristiwa kustom ke pusat aktivitas dengan menggunakan Event Grid dan Azure CLI
Azure Event Grid adalah broker peristiwa yang sangat dapat diskalakan dan tanpa server yang dapat Anda gunakan untuk mengintegrasikan aplikasi melalui peristiwa. Event Grid mengirimkan peristiwa ke penanganan aktivitas yang didukung, dan Azure Event Hubs adalah salah satunya.
Dalam mulai cepat ini, Anda menggunakan Azure CLI untuk membuat topik kustom Event Grid dan langganan Azure Event Hubs untuk topik tersebut. Anda kemudian mengirim peristiwa sampel ke topik kustom dan memverifikasi bahwa peristiwa tersebut dikirimkan ke pusat aktivitas.
Jika Anda tidak memiliki Langganan Azure, buat Akun gratis Azure sebelum memulai.
Buat grup sumber daya
Topik Event Grid adalah sumber daya Azure, dan harus ditempatkan dalam grup sumber daya Azure. Grup sumber daya Azure adalah koleksi logis tempat sumber daya Azure disebarkan dan dikelola.
Buat grup sumber daya menggunakan perintah az group create. Contoh berikut ini menampilkan cara membuat grup sumber daya bernama gridResourceGroup
di westus2
lokasi.
Pilih Buka Cloud Shell untuk membuka Azure Cloud Shell di panel kanan. Pilih tombol Salin untuk menyalin perintah, tempelkan di Cloud Shell, lalu pilih tombol Enter untuk menjalankan perintah.
az group create --name gridResourceGroup --location westus2
Aktifkan penyedia sumber daya Event Grid
Jika sebelumnya Anda belum menggunakan Event Grid di langganan Azure, Anda mungkin perlu mendaftarkan penyedia sumber daya Event Grid. Jalankan perintah berikut untuk mendaftarkan penyedia:
az provider register --namespace Microsoft.EventGrid
Mungkin perlu beberapa saat agar pendaftaran selesai. Untuk memeriksa status, jalankan perintah berikut:
az provider show --namespace Microsoft.EventGrid --query "registrationState"
Saat
registrationState
adalahRegistered
, Anda siap untuk melanjutkan.
Membuat topik kustom
Topik Event Grid menyediakan titik akhir yang ditentukan pengguna tempat Anda memposting peristiwa. Contoh berikut membuat topik kustom di grup sumber daya Anda.
Ganti <TOPIC NAME>
dengan nama unik untuk topik kustom Anda. Nama topik Event Grid harus unik karena entri Sistem Nama Domain (DNS) mewakilinya.
Tentukan nama untuk topik:
topicname="<TOPIC NAME>"
Jalankan perintah berikut untuk membuat topik:
az eventgrid topic create --name $topicname -l westus2 -g gridResourceGroup
Membuat pusat aktivitas
Sebelum Anda berlangganan topik kustom, buat titik akhir untuk pesan peristiwa. Anda membuat pusat aktivitas untuk mengumpulkan peristiwa.
Tentukan nama unik untuk namespace layanan Azure Event Hubs:
namespace="<EVENT HUBS NAMESPACE NAME>"
Jalankan perintah berikut untuk membuat namespace layanan Azure Event Hubs dan pusat aktivitas bernama
demohub
di namespace layanan tersebut:hubname=demohub az eventhubs namespace create --name $namespace --resource-group gridResourceGroup az eventhubs eventhub create --name $hubname --namespace-name $namespace --resource-group gridResourceGroup
Berlangganan topik kustom
Anda berlangganan topik Event Grid untuk memberi tahu Event Grid peristiwa mana yang ingin Anda lacak. Contoh berikut berlangganan topik kustom yang Anda buat, dan meneruskan ID sumber daya hub peristiwa untuk titik akhir. Titik akhir dalam format ini:
/subscriptions/<AZURE SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP NAME>/providers/Microsoft.EventHub/namespaces/<NAMESPACE NAME>/eventhubs/<EVENT HUB NAME>
Skrip berikut mendapatkan ID sumber daya untuk pusat aktivitas dan berlangganan topik Event Grid. Ini mengatur jenis titik akhir ke eventhub
dan menggunakan ID pusat aktivitas untuk titik akhir.
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
Akun yang membuat langganan peristiwwa harus memiliki akses tulis ke pusat aktivitas.
Mengirim peristiwa ke topik kustom Anda
Picu peristiwa untuk melihat bagaimana Event Grid mendistribusikan pesan ke titik akhir Anda. Pertama, dapatkan URL dan kunci untuk topik kustom:
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)
Demi kesederhanaan dalam artikel ini, Anda menggunakan data peristiwa sampel untuk dikirim ke topik kustom. Biasanya, aplikasi atau layanan Azure akan mengirim data peristiwa.
Alat cURL mengirim permintaan HTTP. Dalam artikel ini, Anda menggunakan cURL untuk mengirim peristiwa ke topik kustom. Contoh berikut mengirimkan tiga peristiwa ke topik 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
Di portal Azure, pada halaman Gambaran Umum untuk namespace Layanan Pusat Aktivitas Anda, perhatikan bahwa Event Grid mengirim ketiga peristiwa tersebut ke pusat aktivitas. Anda melihat bagan yang sama di halaman Gambaran Umum untuk demohub
instans Azure Event Hubs.
Biasanya, Anda membuat aplikasi yang mengambil pesan peristiwa dari pusat aktivitas. Untuk informasi selengkapnya, lihat:
- Mulai menerima pesan dengan host prosesor peristiwa di .NET Standard
- Menerima peristiwa dari Azure Event Hubs dengan menggunakan Java
- Menerima peristiwa dari Azure Event Hubs dengan menggunakan Apache Storm
Membersihkan sumber daya
Jika Anda berencana untuk terus bekerja dengan peristiwa ini, jangan bersihkan sumber daya yang Anda buat di artikel ini. Jika tidak, gunakan perintah berikut untuk menghapus sumber daya:
az group delete --name gridResourceGroup
Konten terkait
Setelah mengetahui cara membuat topik dan langganan kejadian, pelajari lebih lanjut tentang Azure Event Grid apa yang dapat membantu Anda melakukan:
- Tentang Event Grid
- Merutekan peristiwa Azure Blob Storage ke titik akhir web kustom
- Memantau perubahan komputer virtual dengan Azure Event Grid dan Logic Apps
- Streaming data besar ke dalam gudang data
Untuk mempelajari tentang menerbitkan peristiwa ke, dan menggunakan peristiwa dari, Event Grid dengan menggunakan berbagai bahasa pemrograman, lihat sampel berikut: