Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Mengurangi biaya pengiriman pesan dengan Basic Ingest
Anda dapat menggunakan Basic Ingest, untuk mengirim data perangkat dengan aman ke perangkat yang Layanan AWS didukung olehAWS IoT tindakan aturan, tanpa menimbulkan biaya pengiriman pesan.
Basic Ingest dapat mengirim pesan dari perangkat atau aplikasi Anda. Pesan memiliki nama topik yang dimulai dengan $aws/rules/
untuk tiga level pertama mereka, di mana rule_name
adalah nama AWS IoT aturan yang ingin Anda panggil.rule_name
Anda dapat menggunakan aturan yang ada dengan Basic Ingest dengan menambahkan awalan Basic Ingest ($aws/rules/
) ke topik pesan yang akan Anda gunakan untuk memanggil aturan. Misalnya, jika Anda memiliki aturan bernama rule_name
BuildingManager
yang dipanggil oleh pesan dengan topik seperti Buildings/Building5/Floor2/Room201/Lights
("sql": "SELECT * FROM
'Buildings/#'"
), Anda dapat memanggil aturan yang sama dengan Basic Ingest dengan mengirimkan pesan dengan topik. $aws/rules/BuildingManager/Buildings/Building5/Floor2/Room201/Lights
catatan
-
Perangkat dan aturan Anda tidak dapat berlangganan topik yang dicadangkan Basic Ingest. Misalnya, AWS IoT Device Defender
num-messages-received
metrik metrik tidak dipancarkan karena tidak mendukung berlangganan topik. Untuk informasi selengkapnya, lihat Topik yang dipesan. -
Jika Anda memerlukan broker terbitkan/berlangganan untuk mendistribusikan pesan ke beberapa pelanggan (misalnya, untuk mengirimkan pesan ke perangkat lain dan mesin aturan), Anda harus terus menggunakan broker AWS IoT pesan untuk menangani distribusi pesan. Namun, pastikan Anda mempublikasikan pesan Anda tentang topik selain topik Basic Ingest.
Menggunakan Basic Ingest
Sebelum Anda menggunakan Basic Ingest, verifikasi bahwa perangkat atau aplikasi Anda menggunakan kebijakan yang memiliki izin publikasi. $aws/rules/*
Atau, Anda dapat menentukan izin untuk aturan individu dengan $aws/rules/
dalam kebijakan. Jika tidak, perangkat dan aplikasi Anda dapat terus menggunakan koneksi yang ada dengannya AWS IoT Core.rule_name
/*
Ketika pesan mencapai mesin aturan, tidak ada perbedaan dalam implementasi atau penanganan kesalahan antara aturan yang dipanggil dari Basic Ingest dan yang dipanggil melalui langganan broker pesan.
Anda dapat membuat aturan untuk digunakan dengan Basic Ingest. Ingatlah hal berikut:
-
Awalan awal topik Basic Ingest (
$aws/rules/
) tidak tersedia untuk fungsi tersebut. topik (Desimal)rule_name
-
Jika Anda mendefinisikan aturan yang dipanggil hanya dengan Basic Ingest,
FROM
klausa tersebut bersifat opsional disql
bidang definisi.rule
Ini masih diperlukan jika aturan juga dipanggil oleh pesan lain yang harus dikirim melalui broker pesan (misalnya, karena pesan lain tersebut harus didistribusikan ke beberapa pelanggan). Untuk informasi selengkapnya, lihat AWS IoT Referensi SQL. -
Tiga level pertama dari topik Ingest Dasar (
$aws/rules/
) tidak dihitung terhadap batas panjang 8 segmen atau menuju batas karakter 256 total untuk suatu topik. Jika tidak, pembatasan yang sama berlaku seperti yang didokumentasikan dalam AWS IoT Batas.rule_name
-
Jika pesan diterima dengan topik Ingest Dasar yang menentukan aturan tidak aktif atau aturan yang tidak ada, log kesalahan dibuat di CloudWatch log Amazon untuk membantu Anda melakukan debug. Untuk informasi selengkapnya, lihat Aturan entri log mesin.
RuleNotFound
Metrik ditunjukkan dan Anda dapat membuat alarm pada metrik ini. Untuk informasi selengkapnya, lihat Metrik Aturan diMetrik aturan. -
Anda masih dapat mempublikasikan dengan QoS 1 tentang topik Basic Ingest. Anda menerima PUBACK setelah pesan berhasil dikirim ke mesin aturan. Menerima a tidak PUBACK berarti bahwa tindakan aturan Anda berhasil diselesaikan. Anda dapat mengonfigurasi tindakan kesalahan untuk menangani kesalahan saat tindakan dijalankan. Untuk informasi selengkapnya, lihat Penanganan kesalahan (tindakan kesalahan).