Mengirim peristiwa dari API Management ke Event Grid
BERLAKU UNTUK: Konsumsi | Pengembang | Dasar | Standar | Premi
API Management terintegrasi dengan Azure Event Grid sehingga Anda dapat mengirim notifikasi kejadian ke layanan lain dan memicu proses hilir. Event Grid adalah layanan perutean kejadian dikelola penuh yang menggunakan model terbitkan-berlangganan. Event Grid memiliki dukungan bawaan untuk layanan Azure seperti Azure Functions dan Azure Logic Apps, dan dapat memberikan pemberitahuan kejadian ke layanan non-Azure menggunakan webhook.
Misalnya, dengan menggunakan integrasi dengan Event Grid, Anda dapat membuat aplikasi yang memperbarui database, membuat akun tagihan, dan mengirimkan pemberitahuan email setiap kali pengguna ditambahkan ke instans API Management Anda.
Pada artikel ini, Anda berlangganan kejadian Event Grid dalam instans API Management Anda, memicu kejadian, dan mengirim kejadian ke titik akhir yang memproses data. Sederhananya, Anda mengirim kejadian ke aplikasi web yang mengumpulkan dan menampilkan pesan:
Prasyarat
Gunakan lingkungan Bash di Azure Cloud Shell. Untuk informasi selengkapnya, lihat Mulai Cepat untuk Bash di Azure Cloud Shell.
Jika Anda lebih suka menjalankan perintah referensi CLI secara lokal, instal Azure CLI. Jika Anda menjalankan Windows atau macOS, pertimbangkan untuk menjalankan Azure CLI dalam kontainer Docker. Untuk informasi lebih lanjut, lihat Cara menjalankan Azure CLI di kontainer Docker.
Jika Anda menggunakan instalasi lokal, masuk ke Azure CLI dengan menggunakan perintah login az. Untuk menyelesaikan proses autentikasi, ikuti langkah-langkah yang ditampilkan di terminal Anda. Untuk opsi masuk lainnya, lihat Masuk dengan Azure CLI.
Saat Anda diminta, instal ekstensi Azure CLI pada penggunaan pertama. Untuk informasi selengkapnya tentang ekstensi, lihat Menggunakan ekstensi dengan Azure CLI.
Jalankan versi az untuk menemukan versi dan pustaka dependen yang diinstal. Untuk meningkatkan ke versi terbaru, jalankan peningkatan az.
- Jika Anda tidak memiliki layanan API Management, selesaikan mulai cepat berikut: Membuat instans Azure API Management
- Aktifkan identitas terkelola yang ditetapkan sistem di instans API Management Anda.
- Buat grup sumber daya jika Anda tidak memilikinya untuk menyebarkan titik akhir sampel.
Membuat titik akhir peristiwa
Di bagian ini, Anda menggunakan templat Resource Manager untuk menyebarkan sampel aplikasi web yang dibuat sebelumnya ke Azure App Service. Kemudian, Anda berlangganan kejadian Event Grid dari instans API Management Anda dan menetapkan aplikasi ini sebagai titik akhir ke mana kejadian tersebut dikirim.
Untuk menyebarkan aplikasi sampel, Anda dapat menggunakan Azure CLI, Azure PowerShell, atau portal Microsoft Azure. Contoh berikut menggunakan perintah az deployment group create di Azure CLI.
Atur
RESOURCE_GROUP_NAME
ke nama grup sumber daya yang adaAtur
SITE_NAME
ke nama unik aplikasi web AndaNama situs harus unik dalam Azure karena membentuk sebagian dari nama domain yang sepenuhnya memenuhi syarat (FQDN) dari aplikasi web. Di bagian selanjutnya, Anda menuju ke FQDN aplikasi di browser web untuk melihat kejadian.
RESOURCE_GROUP_NAME=<your-resource-group-name>
SITE_NAME=<your-site-name>
az deployment group create \
--resource-group $RESOURCE_GROUP_NAME \
--template-uri "https://raw.githubusercontent.com/Azure-Samples/azure-event-grid-viewer/master/azuredeploy.json" \
--parameters siteName=$SITE_NAME hostingPlanName=$SITE_NAME-plan
Setelah penyebaran berhasil (mungkin perlu beberapa menit), buka browser dan navigasikan ke aplikasi web Anda untuk memastikannya berjalan:
https://<your-site-name>.azurewebsites.net
Anda akan melihat contoh aplikasi yang dirender tanpa pesan kejadian yang ditampilkan.
Mendaftarkan penyedia sumber Event Grid
Kecuali jika Event Grid telah digunakan sebelumnya, Anda harus mendaftarkan penyedia sumber daya Event Grid. Jika Anda pernah menggunakan Event Grid sebelumnya, lewati ke bagian berikutnya.
Di portal Azure, lakukan langkah-langkah berikut:
Di menu sebelah kiri, pilih Langganan.
Pilih langganan yang ingin Anda gunakan untuk Event Grid dari daftar langganan.
Pada halaman Langganan, pilih Penyedia sumber pada bagian Pengaturan di menu sebelah kiri.
Cari Microsoft.EventGrid, dan konfirmasikan bahwa StatusTidak Terdaftar.
Pilih Microsoft.EventGrid dalam daftar penyedia.
Pilih Daftar pada bilah perintah.
Refresh untuk memastikan status Microsoft.EventGrid diubah menjadi Terdaftar.
Berlangganan kejadian API Management
Di Event Grid, Anda berlangganan topik untuk menentukan peristiwa yang ingin Anda lacak, dan tempat untuk mengirim peristiwa. Di sini, Anda membuat langganan ke kejadian di instans API Management Anda.
Di Portal Microsoft Azure, navigasikan ke instans API Management Anda.
Pilih Peristiwa > + Langganan Peristiwa.
Pada tab Dasar:
- Masukkan Nama deskriptif untuk langganan kejadian.
- Di Jenis Kejadian, pilih satu atau beberapa jenis kejadian API Management untuk dikirim ke Event Grid. Untuk contoh dalam artikel ini, pilih setidaknya Microsoft.APIManagement.ProductCreated
- Di Detail Titik Akhir, pilih jenis kejadian Web Hook, klik Pilih titik akhir, dan masukkan URL aplikasi web Anda diikuti dengan
api/updates
. Contoh:https://myapp.azurewebsites.net/api/updates
. - Pilih Konfirmasi pilihan.
Biarkan pengaturan pada tab yang tersisa pada nilai defaultnya, lalu pilih Buat.
Memicu dan melihat kejadian
Sekarang setelah aplikasi sampel aktif dan berjalan dan Anda telah berlangganan instans API Management Anda dengan Event Grid, Anda siap untuk membuat kejadian.
Sebagai contoh, buat produk dalam instans API Management Anda. Jika langganan kejadian Anda menyertakan kejadian Microsoft.APIManagement.ProductCreated, pembuatan produk akan memicu kejadian yang didorong ke titik akhir aplikasi web Anda.
Buka aplikasi web Penampil Event Grid, dan Anda akan melihat kejadian ProductCreated
. Pilih tombol di samping kejadian untuk menampilkan detailnya.
Skema peristiwa Event Grid
Data kejadian API Management mencakup resourceUri
, yang mengidentifikasi sumber daya API Management yang memicu kejadian. Untuk detail tentang skema pesan kejadian API Management, lihat dokumentasi Event Grid:
Skema kejadian Azure Event Grid untuk API Management
Langkah berikutnya
- Pelajari berlangganan kejadian lebih lanjut.