Tutorial: Menanggapi peristiwa Azure Service Bus yang diterima melalui Azure Event Grid dengan menggunakan Azure Logic Apps
Dalam tutorial ini, Anda mempelajari cara menanggapi peristiwa Azure Service Bus yang diterima melalui Azure Event Grid dengan menggunakan Azure Logic Apps.
Prasyarat
Jika Anda tidak memiliki langganan Azure, buatlah akun gratis sebelum Anda memulai.
Buat ruang nama Bus Layanan
Ikuti instruksi di tutorial ini: Mulai Cepat: Menggunakan portal Azure untuk membuat topik Bus Layanan dan berlangganan ke topik untuk melakukan tugas berikut:
- Buat namespace Bus Layanan premium.
- Dapatkan string koneksi.
- Pilih topik Bus Layanan.
- Buat langganan ke topik tersebut. Anda hanya perlu satu langganan dalam tutorial ini, jadi tidak perlu membuat langganan S2 dan S3.
Mengirim pesan ke topik Service Bus
Dalam langkah ini, Anda menggunakan aplikasi sampel untuk mengirim pesan ke topik Bus Layanan yang Anda buat di langkah sebelumnya.
Kloning repositori GitHub azure-service-bus atau unduh file zip dan ekstrak file darinya.
Di Visual Studio, buka folder \samples\DotNet\Azure.Messaging.ServiceBus\ServiceBusEventGridIntegrationV2, kemudian buka file SBEventGridIntegration.sln.
Di jendela Penjelajah Solusi, perluas proyek MessageSender, dan pilih Program.cs.
Ganti
<SERVICE BUS NAMESPACE - CONNECTION STRING>
dengan string koneksi ke namespace Bus Layanan Anda dan<TOPIC NAME>
dengan nama topik.const string ServiceBusConnectionString = "<SERVICE BUS NAMESPACE - CONNECTION STRING>"; const string TopicName = "<TOPIC NAME>";
Bangun dan jalankan program untuk mengirim 5 pesan pengujian (
const int numberOfMessages = 5;
) ke topik Bus Layanan.
Menerima pesan dengan menggunakan Logic Apps
Dalam langkah ini, Anda membuat aplikasi logika Azure yang menerima peristiwa Service Bus melalui Azure Event Grid.
Pilih + Buat sumber daya, pilih Integrasi, lalu pilih Logic App.
Pada halaman Buat Aplikasi Logika, ikuti langkah-langkah berikut:
- Pilih langganan Azure Anda.
- Pilih Gunakan yang sudah ada untuk Grup sumber daya, dan pilih grup sumber daya yang Anda gunakan untuk sumber daya lain (seperti fungsi Azure, namespace Service Bus) yang Anda buat sebelumnya.
- Masukkan nama untuk aplikasi logika tersebut.
- Pilih Wilayah untuk aplikasi logika.
- Untuk Jenis paket, pilih Konsumsi.
- Pilih Tinjau + Buat.
- Pada halaman Tinjau + Buat, pilih Buat untuk membuat aplikasi logika.
Pada halaman Penyebaran selesai , pilih Buka sumber daya untuk menavigasi ke halaman Aplikasi logika.
Pada halaman Logic Apps Designer, pilih Logic App Kosong di bawah Templat.
Menambahkan langkah menerima pesan dari Microsoft Azure Service Bus melalui Event Grid
Pada halaman Aplikasi logika, pilih Perancang aplikasi logika di menu sebelah kiri.
Di panel kanan, di bawah Templat, pilih Aplikasi Logika Kosong.
Pada perancang, lakukan langkah-langkah berikut:
Cari Event Grid.
Pilih Saat peristiwa sumber daya terjadi - Azure Event Grid.
Pilih Masuk.
Pada halaman Masuk ke akun Anda, pilih akun yang ingin Anda gunakan untuk masuk ke Azure. 1.
Pada halaman Saat peristiwa sumber daya terjadi, lakukan langkah-langkah berikut:
Pilih langganan Azure Anda.
Untuk Jenis Sumber Daya, pilih Microsoft.ServiceBus.Namespaces.
Untuk Nama Sumber Daya, pilih namespace Service Bus Anda.
Pilih Tambahkan parameter baru, pilih Filter Akhiran, lalu pindahkan fokus di luar menu drop-down.
Untuk Filter Akhiran, masukkan nama langganan topik Azure Service Bus Anda.
Pilih + Langkah Baru dalam perancang, dan lakukan langkah-langkah berikut:
Cari Service Bus.
Pilih Service Bus dalam daftar.
Pilih untuk Mendapatkan pesan di daftar Tindakan.
Pilih Ambil pesan dari langganan topik (intip-kunci).
Ikuti langkah-langkah ini:
Masukkan nama untuk koneksi. Misalnya: Dapatkan pesan dari langganan topik.
Konfirmasikan bahwa Jenis Autentikasi diatur ke Kunci Akses.
Untuk String Koneksi ion, salin dan tempel string koneksi ke namespace Bus Layanan yang Anda simpan sebelumnya.
Pilih Buat.
Pilih topik dan langganan Anda.
Menambahkan langkah untuk memproses dan menyelesaikan pesan yang diterima
Dalam langkah ini, Anda menambahkan langkah-langkah untuk mengirim pesan yang diterima dalam email lalu menyelesaikan pesan. Dalam skenario dunia nyata, Anda memproses pesan di aplikasi logika sebelum menyelesaikan pesan.
Menambahkan perulangan ForEach
Pilih + Langkah baru.
Cari lalu pilih Kontrol.
Di daftar Tindakan, pilih ForEach.
Untuk Memilih output dari langkah sebelumnya (klik di dalam kotak teks jika diperlukan), pilih Isi di bawah Dapatkan pesan dari langganan topik (kunci layar).
Tambahkan langkah di dalam perulangan ForEach untuk mengirim email dengan isi pesan
Di perulangan ForEach, pilih Tambah tindakan.
Di dalam kotak teks Cari konektor dan tindakan, masukkan Office 365.
Pilih Office 365 Outlook dalam hasil pencarian.
Di daftar tindakan, pilih Kirim email (V2).
Pilih Masuk, dan ikuti langkah-langkah untuk membuat koneksi ke Office 365 Outlook.
Di jendela Kirim email (V2), ikuti langkah-langkah berikut:
Pilih di dalam kotak teks untuk Isi, dan ikuti langkah-langkah ini:
Untuk Ke, masukkan alamat email.
Untuk Subjek, masukkan Pesan yang diterima dari langganan topik Microsoft Azure Service Bus.
Beralih ke Ekspresi.
Masukkan ekspresi berikut:
base64ToString(items('For_each')?['ContentData'])
Pilih OK.
Menambahkan tindakan lain dalam perulangan ForEach untuk menyelesaikan pesan
Di perulangan ForEach, pilih Tambah tindakan.
Pilih Microsoft Azure Service Bus di daftar Terbaru.
Pilih Selesaikan pesan dalam langganan topik dari daftar tindakan.
Pilih topik Service Bus Anda.
Pilih langganan ke topik tersebut.
Untuk Token kunci pesan, pilih Kunci Token dari konten Dinamis.
Pilih Simpan pada toolbar di Logic Apps Designer untuk menyimpan aplikasi logika.
Menguji aplikasi
Jika Anda belum mengirim pesan uji ke topik tersebut, ikuti instruksi di bagian Kirim pesan ke bagian topik Service Bus untuk mengirim pesan ke topik tersebut.
Beralih ke halaman Ringkasan aplikasi logika, lalu beralih ke tab Riwayat eksekusi di panel bawah. Anda akan melihat pesan eksekusi aplikasi logika yang dikirim ke topik. Ini bisa memakan waktu beberapa menit sebelum Anda melihat aplikasi logika berjalan. Pilih Refresh pada toolbar untuk merefresh halaman.
Pilih aplikasi logika yang dijalankan untuk melihat detailnya. Perhatikan bahwa aplikasi logika memproses 5 pesan dalam untuk loop.
Anda harus mendapatkan email untuk setiap pesan yang diterima aplikasi logika.
Pecahkan masalah
Jika Anda tidak melihat pemanggilan apa pun setelah menunggu dan merefresh selama beberapa saat, ikuti langkah-langkah berikut:
Konfirmasikan bahwa pesan mencapai topik Service Bus. Lihat penghitung pesan masuk di halaman Topik Service Bus. Dalam hal ini, saya menjalankan aplikasi MessageSender sekali, jadi saya melihat 5 pesan.
Konfirmasikan bahwa tidak ada pesan aktif di langganan Service Bus. Jika Anda tidak melihat aktivitas apa pun di halaman ini, verifikasi bahwa halaman Langganan Service Bus tidak memperlihatkan jumlah pesan Aktif apa pun. Jika angka untuk penghitung ini lebih besar dari nol, pesan di langganan tidak diteruskan ke fungsi handler (handler langganan aktivitas) karena alasan tertentu. Verifikasi bahwa Anda telah menyiapkan langganan aktivitas dengan benar.
Anda juga melihat aktivitas yang dikirimkan di halaman Aktivitas di kumpulan nama Service Bus.
Anda juga dapat melihat bahwa aktivitas dikirimkan di halaman Langganan Aktivitas. Anda bisa masuk ke halaman ini dengan memilih langganan peristiwa di halaman Aktivitas.
Langkah berikutnya
- Pelajari selengkapnya tentang Azure Event Grid.
- Pelajari selengkapnya tentang Azure Functions.
- Pelajari selengkapnya tentang fitur Logic Apps di Azure App Service.
- Pelajari selengkapnya tentang Azure Service Bus.