AWS IoT Greengrass Version 1 memasuki fase umur panjang pada 30 Juni 2023. Untuk informasi selengkapnya, lihat kebijakan AWS IoT Greengrass V1 pemeliharaan. Setelah tanggal ini, tidak AWS IoT Greengrass V1 akan merilis pembaruan yang menyediakan fitur, penyempurnaan, perbaikan bug, atau patch keamanan. Perangkat yang berjalan AWS IoT Greengrass V1 tidak akan terganggu dan akan terus beroperasi dan terhubung ke cloud. Kami sangat menyarankan Anda bermigrasi ke AWS IoT Greengrass Version 2, yang menambahkan fitur baru yang signifikan dan dukungan untuk platform tambahan.
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
IDT untuk AWS IoT Greengrass pemecahan masalah
IDT untuk AWS IoT Greengrass menulis eror ini ke berbagai lokasi berdasarkan jenis eror. Eror ditulis ke konsol tersebut, berkas log, dan laporan tes.
Kode eror
Tabel berikut mencantumkan kode eror yang dihasilkan oleh IDT untuk AWS IoT Greengrass.
Kode eror | Nama kode eror | Kemungkinan akar masalah | Pemecahan Masalah |
---|---|---|---|
101 |
InternalError |
Terjadi eror internal. |
Periksa log di bawah |
102 |
TimeOutError |
Tes tidak dapat diselesaikan dalam rentang waktu yang terbatas. Hal ini dapat terjadi jika:
|
|
103 |
PlatformNotSupportError |
Kombinasi OS/arsitektur salah yang ditentukan dalam |
Ubah konfigurasi Anda ke salah satu kombinasi yang didukung:
Untuk informasi selengkapnya, lihat Konfigurasikan device.json. |
104 |
VersionNotSupportError |
Versi AWS IoT Greengrass perangkat lunak Core tidak didukung oleh versi IDT yang Anda gunakan. |
Gunakan device_tester_bin version perintah untuk menemukan versi yang didukung AWS IoT Greengrass perangkat lunak Core. Sebagai contoh, jika Anda menggunakan macOS, gunakan ./devicetester_mac_x86_64 version. Untuk menemukan versi AWS IoT Greengrass perangkat lunak Inti yang Anda gunakan:
Anda dapat mengetes versi yang berbeda dari AWS IoT Greengrass perangkat lunak Core. Untuk informasi selengkapnya, lihat Memulai dengan AWS IoT Greengrass. |
105 |
LanguageNotSupportError |
IDT mendukung Python untuk AWS IoT Greengrass perpustakaan dan SDK saja. |
Pastikan:
|
106 |
ValidationError |
Beberapa bidang di |
Periksa pesan eror di sisi kanan kode eror dalam laporan.
|
107 |
SSHConnectionFailed |
Mesin tes tidak dapat terhubung ke perangkat yang dikonfigurasi. |
Verifikasi bahwa kolom berikut di file
Untuk informasi selengkapnya, lihat Konfigurasikan device.json. |
108 |
RunCommandError |
Tes gagal untuk menjalankan perintah pada perangkat yang dites. |
Verifikasi bahwa akses root diizinkan untuk pengguna terkonfigurasi di Kata sandi diperlukan oleh beberapa perangkat saat menjalankan perintah dengan akses root. Pastikan akses root diperbolehkan tanpa kata sandi. Untuk informasi lebih lanjut, lihat dokumentasi untuk perangkat Anda. Coba jalankan perintah gagal secara manual di perangkat Anda untuk melihat jika terjadi eror. |
109 |
PermissionDeniedError |
Tidak ada akses root. |
Atur akses root untuk pengguna yang dikonfigurasi di perangkat Anda. |
110 |
CreateFileError |
Tidak dapat membuat file. |
Periksa ruang disk dan izin direktori perangkat Anda. |
111 |
CreateDirError |
Tidak dapat membuat sebuah direktori. |
Periksa ruang disk dan izin direktori perangkat Anda. |
112 |
InvalidPathError |
Jalur ke AWS IoT Greengrass perangkat lunak Core tidak benar. |
Verifikasi bahwa jalur dalam pesan eror adalah valid. Jangan mengedit file apa pun di bawah direktori |
113 |
InvalidFileError |
Sebuah file tidak valid. |
Verifikasi bahwa file dalam pesan eror adalah valid. |
114 |
ReadFileError |
File yang ditentukan tidak dapat dibaca. |
Verifikasi hal berikut:
Jika Anda mengetes di macOS, tingkatkan batas file yang terbuka. Batas default adalah 256, yang cukup untuk pengujian. |
115 |
FileNotFoundError |
File yang diperlukan tidak ditemukan. |
Verifikasi hal berikut:
|
116 |
OpenFileFailed |
Tak dapat membuka file yang ditentukan. |
Verifikasi hal berikut:
Jika Anda mengetes di macOS, tingkatkan batas file yang terbuka. Batas default adalah 256, yang cukup untuk pengujian. |
117 |
WriteFileFailed |
Gagal menulis file (dapat berupa DUT atau mesin tes). |
Verifikasi bahwa direktori yang ditentukan dalam pesan eror yang ada dan bahwa Anda memiliki izin menulis. |
118 |
FileCleanUpError |
Sebuah tes gagal untuk menghapus file tertentu atau direktori atau untuk menjumlah file tertentu pada perangkat remote. |
Jika file biner masih berjalan, file mungkin terkunci. Akhiri proses dan hapus file yang ditentukan. |
119 |
InvalidInputError |
Konfigurasi tidak valid. |
Verifikasi bahwa |
120 |
InvalidCredentialError |
Kredensial AWS tidak valid. |
|
121 |
AWSSessionError |
Gagal membuat AWS sesi. |
Eror ini dapat terjadi jika AWS kredensial tidak valid atau koneksi internet tidak stabil. Coba gunakan AWS CLI untuk memanggil AWS Operasi API. |
122 |
AWSApicallError |
Sebuah AWS eror API terjadi. |
Eror ini mungkin terjadi karena masalah jaringan. Periksa jaringan Anda sebelum mencoba kembali grup tes. |
123 |
IpNotExistError |
Alamat IP tidak termasuk dalam informasi konektivitas. |
Periksa koneksi internet Anda. Anda dapat menggunakan AWS IoT Greengrass konsol untuk memeriksa informasi konektivitas untuk AWS IoT Greengrass hal core yang sedang digunakan oleh tes. Jika ada 10 titik akhir yang disertakan dalam informasi konektivitas, Anda dapat menghapus beberapa atau semua dari mereka dan jalankan kembali tes. Untuk informasi selengkapnya, lihat informasi Konektivitas. |
124 |
OTAJobNotCompleteError |
Pekerjaan OTA tidak selesai. |
Periksa koneksi internet Anda dan coba lagi grup tes OTA. |
125 |
CreateGreengrassServiceRoleError |
Salah satu dari hal berikut terjadi:
|
Mengonfigurasi AWS IoT Greengrass peran layanan. Untuk informasi selengkapnya, lihat Peran layanan Greengrass. |
126 |
DependenciesNotPresentError |
Satu atau lebih dependensi yang diperlukan untuk tes tertentu tidak ada pada perangkat. |
Periksa log tes untuk melihat dependensi yang hilang di perangkat Anda: |
127 |
InvalidHSMConfiguration |
Konfigurasi HSM/PKCS yang disediakan tidak benar. |
Di file |
128 |
OTAJobNotSuccededError |
Tugas OTA tidak berhasil. |
|
129 |
NoConnectivityError |
Agen host gagal untuk terhubung ke internet. |
Periksa koneksi jaringan dan pengaturan firewall Anda. Coba lagi grup tes setelah masalah konektivitas teratasi. |
130 |
NoPermissionError |
User IAM yang Anda gunakan untuk menjalankan IDT AWS IoT Greengrass tidak memiliki izin untuk membuat AWS sumber daya yang diperlukan untuk menjalankan IDT. |
Lihat Templat kebijakan izin untuk templat kebijakan yang memberikan izin yang diperlukan untuk menjalankan IDT AWS IoT Greengrass. |
131 |
LeftoverAgentExistError |
Perangkat Anda menjalankan AWS IoT Greengrass proses ketika Anda mencoba untuk mulai IDT AWS IoT Greengrass. |
Pastikan tidak ada daemon Greengrass yang ada yang berjalan di perangkat Anda.
catatanJika Anda menggunakan instalasi yang ada AWS IoT Greengrass dikonfigurasi untuk mulai secara otomatis setelah reboot, Anda harus menghentikan daemon setelah reboot dan sebelum menjalankan tes suite. |
132 |
DeviceTimeOffsetError |
Perangkat ini mempunyai waktu yang salah. |
Atur perangkat Anda ke waktu yang benar. |
133 |
InvalidMLConfiguration |
Konfigurasi ML yang disediakan tidak benar. |
Di file |
Menyelesaikan IDT untuk AWS IoT Greengrass eror
Ketika Anda menggunakan IDT, Anda harus mendapatkan file konfigurasi yang benar di tempat sebelum Anda menjalankan IDT untuk AWS IoT Greengrass. Jika Anda mendapatkan eror penguraian dan konfigurasi, langkah pertama Anda adalah menemukan dan menggunakan templat konfigurasi yang sesuai untuk lingkungan Anda.
Jika Anda masih mengalami masalah, lihat proses debugging berikut.
Topik
Di mana saya mencari eror?
Eror tingkat tinggi ditampilkan di konsol selama pelaksanaan, dan ringkasan tes gagal dengan eror ditampilkan ketika semua tes selesai. awsiotdevicetester_report.xml
berisi ringkasan dari semua eror yang menyebabkan tes gagal. Berkas log untuk setiap tes dilakukan akan disimpan dalam direktori yang bernama dengan UUID untuk pelaksanaan tes yang ditampilkan pada konsol tersebut selama tes dilakukan.
Direktori log tes terletak di
. Direktori ini berisi file-file berikut, yang berguna untuk debugging.<device-tester-extract-location>
/results/<execution-id>
/logs/
File | Deskripsi |
---|---|
test_manager.log |
Semua log yang ditulis ke konsol tersebut selama pelaksanaan tes. Ringkasan hasil terletak di akhir file ini, yang mencakup daftar tes yang gagal. Log peringatan dan eror dalam file ini dapat memberikan beberapa informasi tentang kegagalan. |
|
Log terperinci untuk tes tertentu. |
<test-name> _ggc_logs.tar.gz |
Koleksi terkompresi dari semua log AWS IoT Greengrass core daemon yang dihasilkan selama pengetesan. Untuk informasi selengkapnya, lihat Pemecahan Masalah AWS IoT Greengrass. |
|
Koleksi terkompresi log yang dihasilkan oleh AWS IoT Greengrass agen OTA selama tes. Untuk tes OTA saja. |
|
Koleksi terkompresi log yang dihasilkan oleh AWS IoT perangkat penerbit selama pengetesan. |
|
Koleksi terkompresi log yang dihasilkan oleh AWS IoT perangkat pelanggan selama pengetesan. |
Penguraian eror
Kadang-kadang, eror ketik dalam konfigurasi JSON dapat menyebabkan penguraian eror. Sebagian besar waktu, masalah adalah hasil dari menghilangkan braket, koma, atau tanda kutip dari file JSON Anda. IDT melakukan validasi JSON dan mencetak informasi debugging. Ini mencetak garis di mana eror terjadi, nomor baris, dan nomor kolom eror sintaks. Informasi ini harus cukup untuk membantu Anda memperbaiki eror, tetapi jika Anda masih tidak dapat menemukan eror, Anda dapat melakukan validasi secara manual di IDE Anda, editor teks seperti Atom atau Sublime, atau melalui alat online seperti JsonLint.
Parameter yang diperlukan tidak ada eror
Karena fitur baru sedang ditambahkan ke IDT, perubahan pada file konfigurasi mungkin akan diperkenalkan. Menggunakan file konfigurasi lama mungkin merusak konfigurasi Anda. Jika hal ini terjadi,
file di bawah <test_case_id>
.log/results/
secara eksplisit mencantumkan semua parameter yang hilang. IDT juga memvalidasi skema file konfigurasi JSON Anda untuk memastikan bahwa versi terbaru yang didukung telah digunakan.<execution-id>
/logs
Tidak dapat memulai eror pengetesan
Anda mungkin mengalami eror yang mengarah ke kegagalan selama tes dimulai. Ada beberapa kemungkinan penyebabnya, jadi lakukan hal berikut:
-
Pastikan bahwa nama kolam Anda termasuk dalam perintah pelaksanaan Anda benar-benar ada. Nama kolam direferensikan langsung dari
device.json
file. -
Pastikan bahwa perangkat di kolam renang Anda memiliki parameter konfigurasi yang benar.
Tidak diotorisasi untuk mengakses eror sumber daya
Anda mungkin melihat <user or role> is not authorized to access this resource
pesan eror dalam output terminal atau di test_manager.log
file di bawah /results/
. Untuk mengatasi masalah ini, lampirkan <execution-id>
/logsAWSIoTDeviceTesterForGreengrassFullAccess
kebijakan terkelola untuk pengguna pengetesan Anda. Untuk informasi selengkapnya, lihat Buat dan konfigurasikan Akun AWS.
Izin ditolak eror
IDT melakukan operasi pada berbagai direktori dan file dalam perangkat yang diuji. Beberapa operasi ini memerlukan akses akar. Untuk mengotomatisasi operasi ini, IDT harus dapat menjalankan perintah dengan sudo tanpa memasukkan kata sandi.
Ikuti langkah-langkah ini untuk mengizinkan akses sudo tanpa mengetikkan kata sandi.
catatan
user
dan username
mengacu pada pengguna SSH yang digunakan oleh IDT untuk mengakses perangkat yang diuji.
-
Gunakan sudo usermod -aG sudo
<ssh-username>
untuk menambahkan pengguna SSH Anda ke grup sudo. -
Keluar, lalu masuk agar perubahan diterapkan.
-
Buka file
/etc/sudoers
dan tambahkan baris berikut ke akhir file:<ssh-username>
ALL=(ALL) NOPASSWD: ALLcatatan
Sebagai praktik terbaik, kami merekomendasikan Anda menggunakan sudo visudo ketika Anda mengedit
/etc/sudoers
.
Eror koneksi SSH
Ketika IDT tidak dapat terhubung ke perangkat yang dites, kegagalan koneksi dicatat di /results/
. Pesan kegagalan SSH muncul di bagian atas berkas log ini karena menghubungkan ke perangkat yang sedang dites adalah salah satu operasi pertama yang dilakukan IDT.<execution-id>
/logs/<test-case-id>
.log
Sebagian besar pengaturan Windows menggunakan aplikasi terminal Putty untuk terhubung ke host Linux. Aplikasi ini mengharuskan file kunci privat PEM standar diubah menjadi format Windows berpemilik yang disebut PPK. Ketika IDT dikonfigurasi di file device.json
Anda, gunakan file PEM saja. Jika Anda menggunakan file PPK, IDT tidak dapat membuat koneksi SSH dengan AWS IoT Greengrass dan tidak dapat menjalankan tes run.
Eror waktu habis
Anda dapat meningkatkan waktu habis untuk setiap tes dengan menentukan pengganda waktu habis, yang diterapkan ke nilai default dari waktu habis setiap tes. Nilai apa pun yang dikonfigurasi untuk bendera ini harus lebih besar dari atau sama dengan 1.0.
Untuk menggunakan pengganda batas waktu, gunakan bendera --timeout-multiplier
saat menjalankan tes. Misalnya:
./devicetester_linux run-suite --suite-id GGQ_1.0.0 --pool-id DevicePool1 --timeout-multiplier 2.5
Untuk informasi lebih lanjut, jalankan run-suite --help
.
Perintah tidak ditemukan eror saat pengetesan
Anda memerlukan versi lama dari pustaka OpenSSL (libssl1.0.0) untuk menjalankan pengujian pada perangkat AWS IoT Greengrass. Sebagian besar distribusi Linux menggunakan libssl versi 1.0.2 atau yang lebih baru (v1.1.0).
Sebagai contoh, pada Raspberry Pi, jalankan perintah berikut untuk menginstal versi libssl yang diperlukan:
-
wget http://ftp.us.debian.org/debian/pool/main/o/openssl/libssl1.0.0_1.0.2l-1~bpo8+1_armhf.deb
-
sudo dpkg -i libssl1.0.0_1.0.2l-1~bpo8+1_armhf.deb
Pengecualian keamanan di macOS
Saat Anda menjalankan IDT di mesin host yang menggunakan macOS 10.15, tiket notaris untuk IDT tidak terdeteksi dengan benar dan IDT diblokir agar tidak dijalankan. Untuk menjalankan IDT, Anda akan perlu untuk memberikan pengecualian keamanan untuk devicetester_mac_x86-64
dilaksanakan.
Untuk memberikan pengecualian keamanan untuk IDT executable
-
Luncurkan Sistem Preferensi dari menu Apple.
-
Pilih Keamanan & Privasi, kemudian pada tab Umum, klik ikon kunci untuk membuat perubahan pada pengaturan keamanan.
-
Cari pesan
"devicetester_mac_x86-64" was blocked from use because it is not from an identified developer.
dan pilih Mengizinkan Bagaimanapun. -
Menerima peringatan keamanan.
Jika Anda memiliki pertanyaan tentang kebijakan dukungan IDT, hubungi AWS Dukungan Pelanggan