Pilih preferensi cookie Anda

Kami menggunakan cookie penting serta alat serupa yang diperlukan untuk menyediakan situs dan layanan. Kami menggunakan cookie performa untuk mengumpulkan statistik anonim sehingga kami dapat memahami cara pelanggan menggunakan situs dan melakukan perbaikan. Cookie penting tidak dapat dinonaktifkan, tetapi Anda dapat mengklik “Kustom” atau “Tolak” untuk menolak cookie performa.

Jika Anda setuju, AWS dan pihak ketiga yang disetujui juga akan menggunakan cookie untuk menyediakan fitur situs yang berguna, mengingat preferensi Anda, dan menampilkan konten yang relevan, termasuk iklan yang relevan. Untuk menerima atau menolak semua cookie yang tidak penting, klik “Terima” atau “Tolak”. Untuk membuat pilihan yang lebih detail, klik “Kustomisasi”.

Pemecahan Masalah IDT untuk V2 AWS IoT Greengrass

Mode fokus
Pemecahan Masalah IDT untuk V2 AWS IoT Greengrass - AWS IoT Greengrass

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

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 V2 menulis kesalahan ke berbagai lokasi berdasarkan jenis kesalahan. IDT menuliskan kesalahan ke konsol, file log, dan laporan tes.

Di mana mencari kesalahan

Kesalahan tingkat tinggi ditampilkan di konsol saat pengujian sedang berjalan, dan ringkasan pengujian yang gagal ditampilkan saat semua pengujian selesai. awsiotdevicetester_report.xmlberisi ringkasan semua kesalahan yang menyebabkan tes gagal. IDT menyimpan file log untuk setiap pengujian yang dijalankan di direktori dengan UUID untuk eksekusi pengujian, ditampilkan di konsol selama uji coba.

Direktori log uji IDT adalah <device-tester-extract-location>/results/<execution-id>/logs/. Direktori ini berisi file-file berikut yang ditampilkan dalam tabel. Ini berguna untuk debugging.

File Deskripsi
test_manager.log

Log ditulis ke konsol saat tes sedang berjalan. Ringkasan hasil pada akhir file ini mencakup daftar tes yang gagal.

Catatan peringatan dan kesalahan dalam file ini dapat memberikan beberapa informasi tentang kegagalan.

test-group-id/test-case-id/test-name.log Log terperrinci untuk tes spesifik dalam grup uji. Untuk tes yang men-deploy komponen Greengrass, uji kasus file log tersebut disebut greengrass-test-run.log.
test-group-id/test-case-id/greengrass.log Log terperinci untuk perangkat lunak AWS IoT Greengrass Core. IDT menyalin file ini dari perangkat yang diuji saat menjalankan pengujian yang menginstal perangkat lunak AWS IoT Greengrass Core pada perangkat. Untuk informasi selengkapnya tentang pesan dalam file log ini, lihat Pemecahan masalah AWS IoT Greengrass V2.
test-group-id/test-case-id/component-name.log Log terperinci untuk komponen Greengrass yang di-deploy selama uji coba. IDT menyalin file log komponen dari perangkat yang diuji ketika menjalankan tes yang men-deploy komponen tertentu. Nama setiap file log komponen sesuai dengan nama komponen yang di-deploy. Untuk informasi selengkapnya tentang pesan dalam berkas log ini, lihat Pemecahan masalah AWS IoT Greengrass V2.

Menyelesaikan IDT untuk kesalahan V2 AWS IoT Greengrass

Sebelum Anda menjalankan IDT untuk AWS IoT Greengrass, dapatkan file konfigurasi yang benar di tempatnya. Jika Anda menerima parsing dan konfigurasi kesalahan, langkah pertama Anda adalah menemukan dan menggunakan templat konfigurasi yang sesuai untuk lingkungan Anda.

Jika Anda masih mengalami masalah, lihat proses debugging berikut.

Kesalahan resolusi alias

Saat menjalankan suite pengujian khusus, Anda mungkin melihat kesalahan berikut di konsol dan ditest_manager.log.

Couldn't resolve placeholders: couldn't do a json lookup: index out of range

Kesalahan ini dapat terjadi ketika alias yang dikonfigurasi dalam orkestrator pengujian IDT tidak diselesaikan dengan benar atau jika nilai yang diselesaikan tidak ada dalam file konfigurasi. Untuk mengatasi kesalahan ini, pastikan bahwa Anda device.json dan userdata.json berisi informasi yang benar yang diperlukan untuk rangkaian pengujian Anda. Untuk informasi tentang konfigurasi yang diperlukan untuk AWS IoT Greengrass kualifikasi, lihatKonfigurasikan pengaturan IDT untuk menjalankan rangkaian AWS IoT Greengrass kualifikasi.

Kesalahan konflik

Anda mungkin melihat kesalahan berikut saat menjalankan rangkaian AWS IoT Greengrass kualifikasi secara bersamaan di lebih dari satu perangkat.

ConflictException: Component [com.example.IDTHelloWorld : 1.0.0] for account [account-id] already exists with state: [DEPLOYABLE] { RespMetadata: { StatusCode: 409, RequestID: “id” }, Message_: “Component [com.example.IDTHelloWorld : 1.0.0] for account [account-id] already exists with state: [DEPLOYABLE]” }

Eksekusi pengujian bersamaan belum didukung untuk rangkaian AWS IoT Greengrass kualifikasi. Jalankan rangkaian kualifikasi secara berurutan untuk setiap perangkat.

Tidak dapat memulai kesalahan uji

Anda mungkin mengalami kesalahan yang mengarah ke kegagalan yang terjadi ketika tes mencoba untuk dimulai. Ada beberapa kemungkinan penyebabnya, jadi lakukan hal berikut:

  • Pastikan bahwa nama kolam dalam perintah eksekusi Anda benar-benar ada. IDT mengacu nama kolam secara langsung dari file device.json.

  • Pastikan bahwa perangkat di kolam Anda memiliki parameter konfigurasi yang benar.

Gambar kualifikasi docker ada kesalahan

Tes kualifikasi manajer aplikasi Docker menggunakan gambar amazon/amazon-ec2-metadata-mock kontainer di Amazon ECR untuk memenuhi syarat perangkat yang diuji.

Anda mungkin menerima kesalahan berikut jika gambar sudah ada dalam kontainer Docker pada perangkat yang diuji.

The Docker image amazon/amazon-ec2-metadata-mock:version already exists on the device.

Jika Anda sebelumnya telah mengunduh gambar ini dan menjalankan amazon/amazon-ec2-metadata-mock di perangkat Anda, pastikan Anda menghapus gambar ini dari perangkat yang sedang diuji sebelum Anda menjalankan tes kualifikasi.

Gagal membaca kredensi

Saat menguji perangkat Windows, Anda mungkin mengalami Failed to read credential kesalahan dalam greengrass.log file jika pengguna yang Anda gunakan untuk menyambung ke perangkat yang sedang diuji tidak diatur di pengelola kredensi pada perangkat tersebut.

Untuk mengatasi kesalahan ini, konfigurasikan pengguna dan kata sandi untuk pengguna IDT di pengelola kredensi pada perangkat yang sedang diuji.

Untuk informasi selengkapnya, lihat Konfigurasikan kredensional pengguna untuk perangkat Windows.

Kesalahan Guice dengan PreInstalled Greengrass

Saat menjalankan IDT dengan PreInstalled Greengrass, jika Anda mengalami kesalahan Guice ErrorInCustomProvider atau, periksa apakah file tersebut userdata.json telah InstalledDirRootOnDevice disetel ke folder instalasi Greengrass. IDT memeriksa file di effectiveConfig.yaml bawah<InstallationDirRootOnDevice>/config/effectiveConfig.yaml.

Untuk informasi selengkapnya, lihat Konfigurasikan kredensional pengguna untuk perangkat Windows.

Pengecualian tanda tangan tidak valid

Saat Anda menjalankan tes kualifikasi Lambda, Anda mungkin mengalami invalidsignatureexception kesalahan jika mesin host IDT Anda mengalami masalah akses jaringan. Setel ulang router Anda dan jalankan tes lagi.

Kesalahan kualifikasi machine learning

Saat menjalankan pengujian kualifikasi machine learning (ML), Anda mungkin mengalami kegagalan kualifikasi jika perangkat Anda tidak memenuhi persyaratan untuk menerapkan komponen ML AWS yang disediakan. Untuk memecahkan masalah kesalahan kualifikasi ML, lakukan hal berikut:

  • Cari rincian kesalahan dalam log komponen untuk komponen yang di-deploy selama uji coba. Log komponen terletak di direktori <device-tester-extract-location>/results/<execution-id>/logs/<test-group-id>.

  • Tambahkan argumen -Dgg.persist=installed.software ke file test.json untuk uji kasus yang gagal. File test.json terletak di <device-tester-extract-location>/tests/GGV2Q_version directory.

Penerapan gagal Open Test Framework (OTF)

Jika pengujian OTF gagal menyelesaikan penerapan, kemungkinan penyebabnya adalah izin yang ditetapkan untuk folder induk dan. TempResourcesDirOnDevice InstallationDirRootOnDevice Untuk mengatur izin folder ini dengan benar, jalankan perintah berikut. Ganti folder-name dengan nama folder induk.

sudo chmod 755 folder-name

Kesalahan parsing

Kesalahan ketik dalam konfigurasi JSON dapat menyebabkan kesalahan parsing. Sering kali, masalah ini adalah akibat dari menghilangkan kurung, koma, atau tanda kutip dari file JSON Anda. IDT melakukan validasi JSON dan mencetak informasi debugging. IDT mencetak garis di mana kesalahan terjadi, nomor baris, dan nomor kolom kesalahan sintaks. Informasi ini seharusnya cukup untuk membantu Anda memperbaiki kesalahan, tetapi jika Anda masih tidak dapat menemukan kesalahan, Anda dapat melakukan validasi secara manual di IDE Anda, editor teks seperti Atom atau Sublime, atau melalui alat online seperti. JSONLint

Kesalahan ditolak izin

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.

  1. Gunakan sudo usermod -aG sudo <ssh-username> untuk menambahkan pengguna SSH Anda ke grup sudo.

  2. Keluar, lalu masuk agar perubahan diterapkan.

  3. Buka file /etc/sudoers dan tambahkan baris berikut ke akhir file: <ssh-username> ALL=(ALL) NOPASSWD: ALL

    catatan

    Sebagai praktik terbaik, kami menyarankan Anda menggunakan sudo visudo saat Anda mengedit /etc/sudoers.

Kesalahan pembuatan laporan kualifikasi

IDT mendukung empat major.minor versi terbaru dari suite kualifikasi AWS IoT Greengrass V2 (GGV2Q) untuk menghasilkan laporan kualifikasi yang dapat Anda kirimkan AWS Partner Network untuk menyertakan perangkat Anda dalam Katalog AWS Partner Perangkat. Versi sebelumnya dari rangkaian kualifikasi ini tidak menghasilkan laporan kualifikasi.

Jika Anda memiliki pertanyaan tentang kebijakan dukungan, hubungi AWS Support.

Parameter yang diperlukan kehilangan kesalahan

Ketika IDT menambahkan fitur baru, ia mungkin memperkenalkan perubahan pada file konfigurasi. Penggunaan file konfigurasi lama mungkin akan merusak konfigurasi Anda. Jika hal ini terjadi, file <test_case_id>.log di bawah /results/<execution-id>/logs secara eksplisit mencantumkan semua parameter yang hilang. IDT juga memvalidasi skema file konfigurasi JSON Anda untuk memverifikasi bahwa Anda menggunakan versi terbaru yang didukung.

Pengecualian keamanan di macOS

Saat Anda menjalankan IDT di komputer host macOS, IDT memblokir IDT agar tidak berjalan. Untuk menjalankan IDT, berikan pengecualian keamanan ke executable yang merupakan bagian dari fungsionalitas runtime IDT. Saat Anda melihat tampilan pesan peringatan di komputer host Anda, lakukan hal berikut untuk setiap executable yang berlaku:

Untuk memberikan pengecualian keamanan untuk executable IDT

  1. Di komputer macOS, pada menu Apple, buka System Preferences.

  2. Pilih Keamanan & Privasi, kemudian pada tab Umum, pilih ikon kunci untuk membuat perubahan pada pengaturan keamanan.

  3. Jika diblokirdevicetester_mac_x86-64, cari pesan "devicetester_mac_x86-64" was blocked from use because it is not from an identified developer. dan pilih Allow Anyway.

  4. Lanjutkan pengujian IDT, sampai Anda melewati semua executable yang terlibat.

Kesalahan koneksi SSH

Ketika IDT tidak dapat terhubung ke perangkat yang diuji, ia mencatat kegagalan koneksi di /results/<execution-id>/logs/<test-case-id>.log. Pesan SSH muncul di bagian atas file log ini karena penyambungan ke perangkat yang diuji adalah salah satu operasi pertama yang dilakukan oleh IDT.

Sebagian besar konfigurasi Windows menggunakan aplikasi TTy terminal Pu untuk terhubung ke host Linux. Aplikasi ini mengharuskan Anda mengonversi file kunci privat PEM standar ke dalam format Windows berpemilik yang disebut PPK. Jika Anda mengonfigurasi SSH di device.json, gunakan file PEM. Jika Anda menggunakan file PPK, IDT tidak dapat membuat koneksi SSH dengan AWS IoT Greengrass perangkat dan tidak dapat menjalankan pengujian.

Dimulai dengan IDT v4.4.0, jika Anda belum mengaktifkan SFTP di perangkat yang sedang diuji, Anda mungkin melihat kesalahan berikut di file log.

SSH connection failed with EOF

Untuk mengatasi kesalahan ini, aktifkan SFTP di perangkat Anda.

Kesalahan kualifikasi stream manager

Ketika Anda menjalankan uji kualifikasi manajer pengaliran, Anda mungkin akan melihat kesalahan berikut di file com.aws.StreamManagerExport.log.

Failed to upload data to S3

Kesalahan ini dapat terjadi ketika pengelola aliran menggunakan AWS kredensional dalam ~/root/.aws/credentials file di perangkat Anda, bukan menggunakan kredenal lingkungan yang diekspor IDT ke perangkat yang sedang diuji. Untuk mencegah masalah ini, hapus file credentials di perangkat Anda, dan jalankan kembali tes kualifikasi.

Kesalahan batas waktu

Anda dapat meningkatkan batas waktu untuk setiap tes dengan menentukan pengganda batas waktu yang diterapkan ke nilai default dari setiap batas waktu 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. Sebagai contoh:

./devicetester_linux run-suite --suite-id GGV2Q_1.0.0 --pool-id DevicePool1 --timeout-multiplier 2.5

Untuk informasi lebih lanjut, jalankan run-suite --help.

Beberapa kesalahan batas waktu terjadi ketika kasus uji IDT tidak dapat diselesaikan karena masalah konfigurasi. Anda tidak dapat mengatasi kesalahan ini dengan meningkatkan pengganda batas waktu. Gunakan log dari uji coba untuk memecahkan masalah konfigurasi yang mendasarinya.

  • Jika log komponen MQTT atau Lambda berisi kesalahanAccess denied, folder instalasi Greengrass Anda mungkin tidak memiliki izin file yang benar. Jalankan perintah berikut untuk setiap folder di jalur instalasi yang Anda tentukan dalam userdata.json file Anda.

    sudo chmod 755 folder-name
  • Jika log Greengrass menunjukkan bahwa penerapan CLI Greengrass belum selesai, lakukan hal berikut:

    • Verifikasi bash yang diinstal pada perangkat yang sedang diuji.

    • Jika userdata.json file Anda menyertakan parameter GreengrassCliVersion konfigurasi, hapus. Parameter ini tidak digunakan lagi di IDT v4.1.0 dan versi yang lebih baru. Untuk informasi selengkapnya, lihat Konfigurasikan userdata.json.

  • Jika pengujian penerapan Lambda gagal dengan pesan kesalahan “Memvalidasi Lambda publish: time out” dan Anda menerima kesalahan dalam file log pengujian (idt-gg2-lambda-function-idt-<resource-id>.log) yang mengatakan, lakukan hal berikut: Error: Could not find or load main class com.amazonaws.greengrass.runtime.LambdaRuntime.

    • Verifikasi folder apa yang digunakan InstallationDirRootOnDevice dalam userdata.json file.

    • Pastikan izin pengguna yang benar diatur di perangkat Anda. Untuk detail selengkapnya, lihat Mengonfigurasi izin pengguna di perangkat Anda.

Kesalahan pemeriksaan versi

IDT mengeluarkan kesalahan berikut ketika kredensi AWS pengguna untuk pengguna IDT tidak memiliki izin IAM yang diperlukan.

Failed to check version compatibility

AWS Pengguna yang tidak memiliki izin IAM yang diperlukan.

PrivasiSyarat situsPreferensi cookie
© 2025, Amazon Web Services, Inc. atau afiliasinya. Semua hak dilindungi undang-undang.