

Pemberitahuan akhir dukungan: Pada 7 Oktober 2026, AWS akan menghentikan dukungan untuk. AWS IoT Greengrass Version 1 Setelah 7 Oktober 2026, Anda tidak akan lagi dapat mengakses sumber daya. AWS IoT Greengrass V1 Untuk informasi lebih lanjut, silakan kunjungi [Migrasi dari AWS IoT Greengrass Version 1](https://docs.aws.amazon.com/greengrass/v2/developerguide/migrate-from-v1.html).

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

# Uji fungsi Lambda berumur panjang
<a name="long-testing"></a>

Fungsi Lambda yang *[berumur panjang](lambda-functions.md#lambda-lifecycle)* dimulai secara otomatis ketika AWS IoT Greengrass inti dimulai dan berjalan dalam satu wadah (atau kotak pasir). Setiap variabel dan logika preprocessing didefinisikan di luar fungsi handler dipertahankan untuk setiap permintaan dari fungsi handler. Beberapa permintaan dari fungsi handler antri sampai permintaan sebelumnya telah dilaksanakan.

 Kode `greengrassHelloWorldCounter.py` yang digunakan dalam modul ini mendefinisikan `my_counter` variabel di luar dari fungsi handler.

**catatan**  
Anda dapat melihat kode di AWS Lambda konsol atau di [AWS IoT Greengrass Core SDK untuk GitHub Python aktif](https://github.com/aws/aws-greengrass-core-sdk-python/blob/master/examples/HelloWorldCounter/greengrassHelloWorldCounter.py).

Pada langkah ini, Anda membuat langganan yang memungkinkan fungsi Lambda AWS IoT dan bertukar pesan MQTT. Kemudian Anda men-deploy grup dan menguji fungsi.

1. Pada halaman konfigurasi grup, pilih **Langganan**, lalu pilih **Tambah**.

1. Di bawah **Jenis sumber**, pilih **fungsi Lambda**, lalu pilih **HelloWorldGreengrass\$1** \$1Counter.

1. Di bawah **Jenis target**, pilih **Layanan**, pilih **IoT Cloud**.

1. Untuk **Filter topik**, masukkan **hello/world/counter**.

1. Pilih **Buat langganan**.

   Langganan tunggal ini hanya berjalan dalam satu arah: dari fungsi `Greengrass_HelloWorld_Counter` Lambda ke. AWS IoT Untuk memanggil (atau memicu) fungsi Lambda ini dari cloud, Anda harus membuat langganan dalam arah yang bertentangan.

1. Ikuti langkah 1 - 5 untuk menambahkan langganan lain yang menggunakan nilai berikut. Langganan ini mengizinkan fungsi Lambda untuk menerima pesan dari AWS IoT. Anda menggunakan langganan ini saat mengirim pesan dari AWS IoT konsol yang memanggil fungsi tersebut.
   + Untuk sumbernya, pilih **Layanan**, lalu pilih **IoT Cloud**.
   + Untuk target, pilih **fungsi Lambda**, lalu pilih **HelloWorldGreengrass\$1** \$1Counter.
   + Untuk filter topik, masukkan **hello/world/counter/trigger**.

   Ekstensi `/trigger` digunakan dalam filter topik ini karena Anda membuat dua langganan dan tidak ingin mereka mengganggu satu sama lain.

1. Pastikan bahwa Greengrass daemon berjalan, seperti yang dijelaskan dalam [Men-deploy konfigurasi cloud ke perangkat core](configs-core.md).

1. <a name="console-actions-deploy"></a>Pada halaman konfigurasi grup, pilih **Deploy**.

1. <a name="console-test-after-deploy"></a>Setelah penerapan Anda selesai, kembali ke beranda AWS IoT konsol dan pilih **Uji**.

1. Konfigurasi bidang berikut:
   + Untuk **Topik langganan**, masukkan **hello/world/counter**.
   + Untuk **Kualitas Layanan**, pilih **0**.
   + Untuk **Tampilan muatan MQTT**, pilih **Tampilkan muatan sebagai string**.

1. Pilih **Berlangganan**.

   Tidak seperti [Bagian 1](module3-I.md) dari modul ini, Anda seharusnya tidak melihat pesan apa pun setelah Anda berlangganan `hello/world/counter`. Hal ini karena kode `greengrassHelloWorldCounter.py` yang menerbitkan ke topik `hello/world/counter` adalah di dalam fungsi handler, yang berjalan hanya ketika fungsi tersebut dipanggil.

   Dalam modul ini, Anda mengonfigurasi `Greengrass_HelloWorld_Counter` fungsi Lambda akan dipanggil ketika menerima pesan MQTT pada `hello/world/counter/trigger` topik.

   Langganan **Greengrass\$1 \$1Counter HelloWorld to** **IoT Cloud** memungkinkan fungsi untuk mengirim pesan ke topik tersebut. AWS IoT `hello/world/counter` Langganan **IoT Cloud** to **Greengrass\$1 HelloWorld \$1Counter** memungkinkan AWS IoT untuk mengirim pesan ke fungsi pada topik tersebut. `hello/world/counter/trigger`

1. Untuk menguji siklus hidup berumur panjang, memanggil fungsi Lambda dengan menerbitkan pesan ke `hello/world/counter/trigger` topik. Anda dapat menggunakan pesan default.  
![\[Default Hello dari pesan AWS IoT konsol yang dikirim ke hello/world/counter/trigger dengan tombol Publikasikan ke topik disorot.\]](http://docs.aws.amazon.com/id_id/greengrass/v1/developerguide/images/gg-get-started-057.png)
**catatan**  
 Fungsi `Greengrass_HelloWorld_Counter` mengabaikan isi dari pesan yang diterima. Itu hanya menjalankan kode di `function_handler`, yang mengirim pesan ke `hello/world/counter` topik. Anda dapat meninjau kode ini dari [AWS IoT Greengrass Core SDK untuk GitHub Python](https://github.com/aws/aws-greengrass-core-sdk-python/blob/master/examples/HelloWorldCounter/greengrassHelloWorldCounter.py).

Setiap kali pesan diterbitkan ke `hello/world/counter/trigger` topik, `my_counter` variabel bertambah. Jumlah doa ini ditampilkan dalam pesan yang dikirim dari fungsi Lambda. Karena fungsi handler mencakup siklus tidur 20 detik (`time.sleep(20)`), berulang kali memicu handler mengantri respons dari inti. AWS IoT Greengrass 

![\[Screenshot menunjukkan penambahan dari Invocation Count dari 1, 2, dan 3.\]](http://docs.aws.amazon.com/id_id/greengrass/v1/developerguide/images/gg-get-started-058.png)
