Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Pemecahan Masalah Pengindeksan Armada
Memecahkan masalah kueri agregasi untuk layanan pengindeksan armada
Jika Anda mengalami kesalahan ketidakcocokan jenis, Anda dapat menggunakan CloudWatch Log untuk memecahkan masalah. CloudWatch Log harus diaktifkan sebelum log ditulis oleh layanan Fleet Indexing. Untuk informasi selengkapnya, lihat Memantau AWS IoT menggunakan CloudWatch Log.
Untuk membuat kueri agregasi pada bidang yang tidak dikelola, Anda harus menentukan bidang yang Anda tentukan dalam customFields argumen yang diteruskan ke UpdateIndexingConfiguration atauupdate-indexing-configuration. Jika nilai bidang tidak konsisten dengan tipe data bidang yang dikonfigurasi, nilai ini diabaikan saat Anda melakukan kueri agregasi.
Jika bidang tidak dapat diindeks karena jenis yang tidak cocok, layanan Pengindeksan Armada mengirimkan log kesalahan ke Log. CloudWatch Log kesalahan berisi nama bidang, nilai yang tidak dapat dikonversi, dan nama benda untuk perangkat. Berikut ini adalah contoh log kesalahan:
{ "timestamp": "2017-02-20 20:31:22.932", "logLevel": "ERROR", "traceId": "79738924-1025-3a00-a669-7bec69f7f07a", "accountId": "000000000000", "status": "SucceededWithIssues", "eventType": "IndexingCustomFieldFailed", "thingName": "thing0", "failedCustomFields": [ { "Name": "attributeName1", "Value": "apple", "ExpectedType": "String" }, { "Name": "attributeName2", "Value": "2", "ExpectedType": "Boolean" } ] }
Jika perangkat telah terputus selama sekitar satu jam, timestamp nilai status konektivitas mungkin hilang. Untuk sesi persisten, nilai mungkin hilang setelah klien terputus lebih lama dari time-to-live (TTL) yang dikonfigurasi untuk sesi persisten. Data status konektivitas diindeks hanya untuk koneksi di mana ID klien memiliki nama benda yang cocok. (ID klien adalah nilai yang digunakan untuk menghubungkan perangkat ke AWS IoT Core.)
Memecahkan masalah konfigurasi pengindeksan armada
Tidak dapat menurunkan konfigurasi pengindeksan armada
Menurunkan konfigurasi pengindeksan armada tidak didukung bila Anda ingin menghapus sumber data yang terkait dengan metrik armada atau grup dinamis.
Misalnya, jika konfigurasi pengindeksan Anda memiliki data registri, data bayangan, dan data konektivitas, dan metrik armada ada ada dengan kuerithingName:TempSensor*
AND shadow.desired.temperature>80, memperbarui konfigurasi pengindeksan untuk hanya menyertakan data registri akan mengakibatkan kesalahan.
Memodifikasi bidang khusus yang digunakan oleh metrik armada yang ada tidak didukung.
Tidak dapat memperbarui konfigurasi pengindeksan karena metrik armada atau grup dinamis yang tidak kompatibel
Jika Anda tidak dapat memperbarui konfigurasi pengindeksan karena metrik armada atau grup dinamis yang tidak kompatibel, hapus metrik armada atau grup dinamis yang tidak kompatibel sebelum Anda memperbarui konfigurasi pengindeksan.
Memecahkan masalah pengindeksan lokasi dan geoquery
Untuk memecahkan masalah kesalahan jenis yang tidak cocok dalam pengindeksan lokasi dan geoquery, Anda dapat mengaktifkan log. CloudWatch Untuk informasi lebih lanjut tentang cara memantau AWS IoT penggunaan CloudWatch, ikuti panduan langkah demi langkah.
Saat Anda mengindeks data lokasi menggunakan geoquery, bidang lokasi yang Anda tentukan geoLocations harus cocok dengan bidang lokasi yang Anda lewati. UpdateIndexingConfiguration Jika ada ketidakcocokan, pengindeksan armada mengirimkan kesalahan jenis yang tidak cocok ke. CloudWatch Log kesalahan berisi nama bidang, nilai yang tidak dapat dikonversi, dan nama benda untuk perangkat.
Berikut ini adalah contoh log kesalahan:
{ "timestamp": "2023-11-09 01:39:43.466", "logLevel": "ERROR", "traceId": "79738924-1025-3a00-a669-7bec69f7f07a", "accountId": "123456789012", "status": "Failure", "eventType": "IndexingGeoLocationFieldFailed", "thingName": "thing0", "failedGeolocationFields": [ { "Name": "attributeName1", "Value": "apple", "ExpectedType": "Geopoint" } ], "reason": "failed to index the field because it could not be converted to one of the expected geoLocation formats." }
Untuk informasi selengkapnya, lihat Pengindeksan data lokasi.
Memecahkan masalah metrik armada
Tidak dapat melihat titik data di CloudWatch
Jika Anda dapat membuat metrik armada tetapi Anda tidak dapat melihat titik data di dalamnya CloudWatch, kemungkinan Anda tidak memiliki sesuatu yang memenuhi kriteria string kueri.
Lihat contoh perintah ini tentang cara membuat metrik armada:
aws iot create-fleet-metric --metric-name "example_FM" --query-string "thingName:TempSensor* AND attributes.temperature>80" --period 60 --aggregation-field "attributes.temperature" --aggregation-type name=Statistics,values=count
Jika Anda tidak memiliki sesuatu yang memenuhi kriteria string kueri--query-string
"thingName:TempSensor* AND attributes.temperature>80":
-
Dengan
values=count, Anda akan dapat membuat metrik armada dan akan ada titik data untuk ditampilkan CloudWatch. Titik data dari nilaicountselalu 0. -
Dengan
valuesselain itucount, Anda akan dapat membuat metrik armada tetapi Anda tidak akan melihat metrik armada di dalam CloudWatch dan tidak akan ada titik data untuk ditampilkan CloudWatch.