Tutorial: Mengirim data perangkat ke Azure Storage menggunakan perutean pesan IoT Hub
Gunakan perutean pesan di Azure IoT Hub untuk mengirim data telemetri dari perangkat IoT Anda ke layanan Azure seperti penyimpanan blob, Antrean Bus Layanan, Topik Bus Layanan, dan Pusat Aktivitas. Setiap IoT hub memiliki titik akhir bawaan default yang kompatibel dengan Azure Event Hubs. Anda juga dapat membuat titik akhir kustom dan merutekan pesan ke layanan Azure lainnya dengan menentukan kueri perutean. Setiap pesan yang tiba di IoT hub dirutekan ke semua titik akhir yang kueri peruteannya cocok. Jika pesan tidak cocok dengan kueri perutean yang ditentukan, pesan dirutekan ke titik akhir default.
Dalam tutorial ini, Anda melakukan tugas berikut:
- Buat IoT hub dan kirim pesan perangkat ke dalamnya.
- Membuat akun penyimpanan.
- Buat titik akhir kustom untuk akun penyimpanan dan rutekan pesan ke dalamnya dari IoT hub.
- Lihat pesan perangkat di blob akun penyimpanan.
Prasyarat
Langganan Azure. Jika Anda tidak memiliki langganan Azure, buat akun gratis sebelum Anda memulai.
IoT Hub di langganan Azure Anda. Jika belum memiliki hub, Anda dapat mengikuti langkah-langkah di Membuat IoT hub.
Tutorial ini menggunakan kode sampel dari Azure IoT SDK untuk C#.
- Unduh atau kloning repositori SDK ke komputer pengembangan Anda.
- Memiliki .NET Core SDK 3.0.0 atau yang lebih baru di mesin pengembangan Anda. Periksa versi Anda dengan menjalankan
dotnet --version
dan Unduh .NET jika perlu.
Pastikan port 8883 terbuka di firewall Anda. Sampel dalam tutorial ini menggunakan protokol MQTT, yang berkomunikasi melalui port 8883. Port ini dapat diblokir di beberapa lingkungan jaringan perusahaan dan pendidikan. Untuk informasi selengkapnya dan cara mengatasi masalah ini, lihat Menyambungkan ke Azure IoT Hub (MQTT).
Secara opsional, instal Azure IoT Explorer. Alat ini membantu Anda mengamati pesan saat tiba di IoT hub Anda. Artikel ini menggunakan Azure IoT Explorer.
Tidak ada prasyarat lain untuk portal Azure.
Mendaftarkan perangkat dan mengirim pesan ke IoT Hub
Daftarkan perangkat baru di IoT hub Anda.
Penting
Artikel ini menyertakan langkah-langkah untuk menyambungkan perangkat menggunakan tanda tangan akses bersama, juga disebut autentikasi kunci konten. Metode autentikasi ini mudah untuk pengujian dan evaluasi, tetapi mengautentikasi perangkat menggunakan sertifikat X.509 adalah pendekatan yang lebih aman. Untuk mempelajari lebih lanjut, lihat Keamanan koneksi praktik > terbaik keamanan.
Masuk ke portal Azure dan navigasikan ke IoT hub Anda.
Pilih Perangkat dari bagian Manajemen perangkat pada menu.
Pilih Tambahkan perangkat.
Berikan ID perangkat dan pilih Simpan.
Perangkat baru seharusnya ada dalam daftar perangkat sekarang. Jika tidak, refresh halaman. Pilih ID perangkat untuk membuka halaman detail perangkat.
Salin salah satu kunci perangkat dan simpan. Anda akan menggunakan nilai ini untuk mengonfigurasi kode sampel yang menghasilkan pesan telemetri perangkat yang disimulasikan.
Sekarang setelah Anda memiliki ID dan kunci perangkat, gunakan kode sampel untuk mulai mengirim pesan telemetri perangkat ke IoT Hub.
Tip
Jika Anda mengikuti langkah-langkah Azure CLI untuk tutorial ini, jalankan kode sampel dalam sesi terpisah. Dengan demikian, Anda dapat mengizinkan kode sampel untuk terus berjalan saat Anda mengikuti langkah-langkah CLI lainnya.
Jika Anda tidak sebagai bagian dari prasyarat, unduh atau kloning azure IoT SDK untuk repo C# dari GitHub sekarang.
Dari folder tempat Anda mengunduh atau mengkloning SDK, navigasikan ke
azure-iot-sdk-csharp\iothub\device\samples\how to guides\HubRoutingSample
folder .Instal Azure IoT C# SDK dan dependensi yang diperlukan seperti yang ditentukan dalam file
HubRoutingSample.csproj
:dotnet restore
Di editor pilihan Anda, buka file
Parameters.cs
. File ini menampilkan parameter yang didukung oleh sampel. Hanya parameter yangPrimaryConnectionString
akan digunakan dalam artikel ini saat menjalankan sampel. Tinjau kode dalam file ini. Tidak diperlukan perubahan.Buat dan jalankan kode sampel menggunakan perintah berikut:
Ganti
<myDevicePrimaryConnectionString>
dengan string koneksi utama dari perangkat Anda di hub IoT Anda.dotnet run --PrimaryConnectionString <myDevicePrimaryConnectionString>
Anda akan mulai melihat pesan yang dicetak ke output saat dikirim ke IoT Hub. Biarkan program ini berjalan selama tutorial.
Mengonfigurasi IoT Explorer untuk melihat pesan
Konfigurasikan IoT Explorer untuk menyambungkan ke IoT hub Anda dan membaca pesan saat tiba di titik akhir bawaan.
Pertama, ambil string koneksi untuk IoT hub Anda.
Di portal Azure, navigasi ke hub IoT Anda.
Pilih Kebijakan akses bersama dari bagian Pengaturan keamanan pada menu.
Pilih kebijakan iothubowner.
Salin String koneksi utama.
Sekarang, gunakan string koneksi tersebut untuk mengonfigurasi IoT Explorer untuk IoT hub Anda.
Buka IoT Explorer di mesin pengembangan Anda.
Pilih Tambahkan koneksi.
Tempelkan string koneksi hub Anda ke dalam kotak teks.
Pilih Simpan.
Setelah tersambung ke IoT hub, Anda akan melihat daftar perangkat. Pilih ID perangkat yang Anda buat untuk tutorial ini.
Pilih Telemetri.
Dengan perangkat Anda masih berjalan, pilih Mulai. Jika perangkat Anda tidak berjalan, Anda tidak akan melihat telemetri.
Anda akan melihat pesan yang tiba dari perangkat Anda, dengan yang terbaru ditampilkan di bagian atas.
Tonton pesan masuk selama beberapa saat untuk memverifikasi bahwa Anda melihat tiga jenis pesan yang berbeda: normal, penyimpanan, dan penting. Setelah melihat ini, Anda dapat menghentikan perangkat Anda.
Semua pesan ini tiba di titik akhir bawaan default untuk IoT hub Anda. Di bagian berikutnya, kita akan membuat titik akhir kustom dan merutekan beberapa pesan ini ke penyimpanan berdasarkan properti pesan. Pesan tersebut akan berhenti muncul di IoT Explorer karena pesan hanya masuk ke titik akhir bawaan saat tidak cocok dengan rute lain di IoT hub.
Menyiapkan perutean pesan
Anda akan merutekan pesan ke sumber daya yang berbeda berdasarkan properti yang dilampirkan ke pesan oleh simulasi perangkat. Pesan yang tidak dirutekan secara kustom dikirim ke titik akhir default (pesan/kejadian).
Aplikasi sampel untuk tutorial ini menetapkan properti tingkat untuk setiap pesan yang dikirimnya ke IoT hub. Setiap pesan secara acak ditetapkan ke tingkat normal, penyimpanan, atau penting.
Langkah pertama adalah menyiapkan titik akhir tempat data akan dirutekan. Langkah kedua adalah menyiapkan rute pesan yang menggunakan titik akhir tersebut. Setelah menyiapkan perutean, Anda dapat melihat titik akhir dan rute pesan di portal.
Buat akun penyimpanan
Buat akun Azure Storage dan kontainer dalam akun tersebut, yang akan menyimpan pesan perangkat yang dirutekan ke akun tersebut.
Buka portal Azure, dan cari Akun penyimpanan.
Pilih Buat.
Berikan nilai berikut untuk akun penyimpanan Anda:
Parameter Nilai Langganan Pilih langganan yang sama yang berisi IoT hub Anda. Grup sumber daya Pilih grup sumber daya yang sama yang berisi IoT hub Anda. Nama akun penyimpanan Masukkan nama yang unik secara global untuk akun penyimpanan Anda. Performa Terima nilai Standar default. Anda dapat menerima semua nilai default lainnya dengan memilih Tinjau + buat.
Setelah validasi selesai, pilih Buat.
Setelah penyebaran selesai, pilih Buka sumber daya.
Di menu akun penyimpanan, pilih Kontainer dari bagian Penyimpanan data.
Pilih + Kontainer untuk membuat kontainer baru.
Beri nama untuk kontainer Anda dan pilih Buat.
Merutekan ke akun penyimpanan
Sekarang siapkan perutean untuk akun penyimpanan. Di bagian ini Anda menentukan titik akhir baru yang menunjuk ke akun penyimpanan yang Anda buat. Kemudian, buat rute yang memfilter pesan di mana properti tingkat diatur ke penyimpanan, dan rutekan ke titik akhir penyimpanan.
Catatan
Data dapat ditulis ke penyimpanan blob dalam format Apache Avro, yang merupakan default, atau JSON.
Format pengodean hanya dapat diatur pada saat titik akhir penyimpanan blob dikonfigurasi. Format tidak dapat diubah untuk titik akhir yang telah disiapkan. Saat menggunakan pengodean JSON, Anda harus mengatur contentType ke JSON dan contentEncoding ke UTF-8 di properti sistem pesan.
Untuk informasi selengkapnya tentang menggunakan titik akhir penyimpanan blob, lihat panduan tentang perutean ke penyimpanan.
Penting
Artikel ini menyertakan langkah-langkah untuk menyambungkan ke layanan menggunakan tanda tangan akses bersama. Metode autentikasi ini mudah untuk pengujian dan evaluasi, tetapi mengautentikasi ke layanan dengan ID Microsoft Entra atau identitas terkelola adalah pendekatan yang lebih aman. Untuk mempelajari selengkapnya, lihat Keamanan praktik > terbaik Keamanan cloud.
Di portal Microsoft Azure, buka IoT hub Anda.
Di menu sumber daya di bawah Pengaturan hub, pilih Perutean pesan lalu pilih Tambahkan.
Pada tab Titik Akhir, buat titik akhir Penyimpanan dengan memberikan informasi berikut:
Parameter Nilai Jenis titik akhir Pilih Penyimpanan. Nama titik akhir Berikan nama unik untuk titik akhir ini. Kontainer Azure Storage Pilih Pilih kontainer. Ikuti perintah untuk memilih akun penyimpanan dan kontainer yang Anda buat di bagian sebelumnya. Pengodean Pilih JSON. Jika bidang ini berwarna abu-abu, wilayah akun penyimpanan Anda tidak mendukung JSON. Dalam hal ini, lanjutkan dengan AVRO default. Terima nilai default untuk parameter lainnya dan pilih Buat + berikutnya.
Pada tab Rute , berikan informasi berikut untuk membuat rute yang menunjuk ke titik akhir Penyimpanan yang Anda buat:
Parameter Nilai Nama Buat nama untuk rute Anda. Sumber data Verifikasi bahwa Pesan Telemetri Perangkat dipilih dari daftar menurun. Aktifkan rute Verifikasi bahwa bidang ini dicentang. Kueri perutean Masukkan level="storage"
sebagai string kueri.Pilih Buat + lewati pengayaan.
Menampilkan pesan yang dirutekan
Setelah dibuat di IoT Hub dan diaktifkan, rute akan segera mulai merutekan pesan yang memenuhi kondisi kuerinya ke titik akhir penyimpanan.
Memantau titik akhir bawaan dengan IoT Explorer
Kembali ke sesi IoT Explorer di komputer pengembangan Anda. Ingat bahwa IoT Explorer memantau titik akhir bawaan untuk IoT hub Anda. Itu berarti bahwa sekarang Anda seharusnya hanya melihat pesan yang tidak dirutekan oleh rute kustom yang kita buat.
Mulai sampel lagi dengan menjalankan kode. Awasi pesan masuk selama beberapa saat dan Anda hanya akan melihat pesan di mana level
diatur ke normal
atau critical
.
Menampilkan pesan dalam kontainer penyimpanan
Verifikasi bahwa pesan tiba di kontainer penyimpanan.
Di portal Microsoft Azure, navigasikan ke akun penyimpanan Anda.
Pilih Kontainer dari bagian Penyimpanan data pada menu.
Pilih kontainer yang Anda buat untuk tutorial ini.
Harus ada folder dengan nama IoT hub Anda. Telusuri paling detail struktur file hingga Anda masuk ke file .json.
Pilih file JSON, lalu pilih Unduh untuk mengunduh file JSON. Konfirmasikan bahwa file berisi pesan dari perangkat Anda yang memiliki properti yang
level
diatur kestorage
.Berhenti menjalankan sampel.
Membersihkan sumber daya
Jika Anda ingin menghapus semua sumber daya Azure yang digunakan untuk tutorial ini, hapus grup sumber daya. Tindakan ini juga menghapus semua sumber daya yang terkandung dalam grup. Jika Anda tidak ingin menghapus seluruh grup sumber daya, gunakan portal Azure untuk menemukan dan menghapus sumber daya individual.
Jika Anda ingin melanjutkan ke tutorial berikutnya, simpan sumber daya yang Anda buat di sini.
- Di portal Azure, navigasikan ke grup sumber daya yang berisi IoT hub dan akun penyimpanan untuk tutorial ini.
- Tinjau semua sumber daya yang ada di grup sumber daya untuk menentukan sumber daya mana yang ingin Anda bersihkan.
- Jika ingin menghapus semua sumber daya, pilih Hapus grup sumber daya.
- Jika Anda hanya ingin menghapus sumber daya tertentu, gunakan kotak centang di samping setiap nama sumber daya untuk memilih sumber daya yang ingin Anda hapus. Kemudian pilih Hapus.
Langkah berikutnya
Dalam tutorial ini Anda mempelajari cara membuat titik akhir kustom untuk sumber daya Azure lalu membuat rute untuk mengirim pesan perangkat ke titik akhir tersebut. Lanjutkan ke tutorial berikutnya untuk mempelajari cara memperkaya pesan dengan data tambahan yang dapat digunakan untuk menyederhanakan pemrosesan hilir