

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

# Menyelesaikan masalah invokasi di Lambda
<a name="troubleshooting-invocation"></a>

Saat Anda memanggil fungsi Lambda, Lambda memvalidasi permintaan dan memeriksa kapasitas penskalaan sebelum mengirim kejadian ke fungsi Anda atau, untuk invokasi asinkron, ke antrean kejadian. Kesalahan invokasi dapat disebabkan oleh masalah parameter permintaan, struktur kejadian, pengaturan fungsi, izin pengguna, izin sumber daya, atau batas.

Jika Anda memanggil fungsi secara langsung, Anda melihat kesalahan invokasi apa pun dalam respons dari Lambda. Jika Anda memanggil fungsi secara asinkron dengan pemetaan sumber kejadian atau melalui layanan lain, Anda mungkin menemukan kesalahan di log, antrean surat gagal, atau tujuan kejadian-gagal. Opsi penanganan kesalahan dan perilaku percobaan ulang berbeda-beda tergantung pada cara Anda memanggil fungsi dan jenis kesalahan.

Untuk daftar tipe kesalahan yang dapat dikembalikan oleh operasi `Invoke`, lihat [Panggil](https://docs.aws.amazon.com/lambda/latest/api/API_Invoke.html).

**Topics**
+ [Lambda: Waktu fungsi habis selama fase Init (Sandbox.Timedout)](#troubleshooting-timeouts)
+ [IAM: lambda: InvokeFunction tidak diizinkan](#troubleshooting-invocation-noauth)
+ [Lambda: Tidak dapat menemukan bootstrap yang valid (Runtime. InvalidEntrypoint)](#troubleshooting-invocation-bootstrap)
+ [Lambda: Operasi tidak dapat dilakukan ResourceConflictException](#troubleshooting-invocation-ResourceConflictException)
+ [Lambda: Fungsi tertahan dalam Tertunda](#troubleshooting-invocation-pending)
+ [Lambda: Salah satu fungsi menggunakan semua konkurensi](#troubleshooting-invocation-allconcurrency)
+ [Umum: Tidak dapat memanggil fungsi dengan akun atau layanan lain](#troubleshooting-invocation-cannotinvoke)
+ [Umum: Invokasi fungsi adalah perulangan](#troubleshooting-invocation-loop)
+ [Lambda: Perutean alias dengan konkurensi terprovisi](#troubleshooting-invocation-alias)
+ [Lambda: Mulai awal dengan konkurensi terprovisi](#troubleshooting-invocation-coldstart)
+ [Lambda: Mulai awal dengan versi baru](#troubleshooting-invocation-newversion)
+ [Lambda: Keluar Node.js yang tidak terduga saat runtime (Runtime. NodejsExit)](#troubleshooting-invocation-nodejs-exit)
+ [EFS: Fungsi tidak dapat memasang sistem file EFS](#troubleshooting-invocation-efsmount)
+ [EFS: Fungsi tidak dapat terhubung ke sistem file EFS](#troubleshooting-invocation-efsconnect)
+ [EFS: Fungsi tidak dapat memasang sistem file EFS karena waktu habis.](#troubleshooting-invocation-efstimeout)
+ [File S3: Fungsi tidak dapat me-mount sistem file S3](#troubleshooting-invocation-s3filesmount)
+ [File S3: Fungsi tidak dapat terhubung ke sistem file S3](#troubleshooting-invocation-s3filesconnect)
+ [File S3: Fungsi tidak dapat me-mount sistem file S3 karena batas waktu](#troubleshooting-invocation-s3filestimeout)
+ [Lambda: Lambda mendeteksi proses IO yang memakan waktu terlalu lama](#troubleshooting-invocation-ioprocess)
+ [Wadah: CodeArtifactUserException kesalahan](#troubleshooting-deployment-container-artifact)
+ [Wadah: InvalidEntrypoint kesalahan](#troubleshooting-deployment-container-entrypoint)

## Lambda: Waktu fungsi habis selama fase Init (Sandbox.Timedout)
<a name="troubleshooting-timeouts"></a>

 **Kesalahan:** *Tugas habis setelah 3,00 detik* 

Saat fase [Init](lambda-runtime-environment.md#runtimes-lifecycle-ib) habis, Lambda menginisialisasi lingkungan eksekusi lagi dengan menjalankan kembali `Init` fase saat permintaan pemanggilan berikutnya tiba. Ini disebut [init yang ditekan](lambda-runtime-environment.md#suppressed-init). Namun, jika fungsi Anda dikonfigurasi dengan [durasi waktu tunggu](configuration-timeout.md) yang singkat (umumnya sekitar 3 detik), init yang ditekan mungkin tidak selesai selama durasi batas waktu yang dialokasikan, menyebabkan `Init` fase habis lagi. Atau, init yang ditekan selesai tetapi tidak menyisakan cukup waktu untuk menyelesaikan fase [Invoke](lambda-runtime-environment.md#runtimes-lifecycle-invoke), menyebabkan `Invoke` fase habis.

Untuk mengurangi kesalahan batas waktu, gunakan satu atau beberapa strategi berikut:
+ **Tingkatkan durasi batas waktu fungsi**: Perpanjang [batas waktu untuk memberikan waktu `Init` dan `Invoke` fase agar berhasil](configuration-timeout.md) diselesaikan.
+ **Tingkatkan alokasi memori fungsi**: Lebih banyak [memori](configuration-memory.md) juga berarti alokasi CPU yang lebih proporsional, yang dapat mempercepat fase dan fase. `Init` `Invoke`
+ **Optimalkan kode inisialisasi fungsi**: Kurangi waktu yang diperlukan untuk inisialisasi untuk memastikan bahwa `Invoke` fase `Init` dan dapat selesai dalam batas waktu yang dikonfigurasi.

## IAM: lambda: InvokeFunction tidak diizinkan
<a name="troubleshooting-invocation-noauth"></a>

 **Kesalahan: Pengguna:** *arn:aws:iam: :123456789012: pengguna/pengembang* tidak berwenang untuk melakukan: lambda: on resource: my-function InvokeFunction 

Pengguna Anda, atau peran yang Anda asumsikan, harus memiliki izin untuk menjalankan fungsi. Persyaratan ini juga berlaku untuk fungsi Lambda dan sumber daya komputasi lainnya yang memanggil fungsi. Tambahkan **AWSLambdaPeran** kebijakan AWS terkelola ke pengguna Anda, atau tambahkan kebijakan khusus yang memungkinkan `lambda:InvokeFunction` tindakan pada fungsi target.

**catatan**  
Nama tindakan IAM (`lambda:InvokeFunction`) mengacu pada operasi API `Invoke` Lambda.

Untuk informasi selengkapnya, lihat [Mengelola izin di AWS Lambda](lambda-permissions.md).

## Lambda: Tidak dapat menemukan bootstrap yang valid (Runtime. InvalidEntrypoint)
<a name="troubleshooting-invocation-bootstrap"></a>

 **Kesalahan:** *Tidak dapat menemukan bootstrap yang valid: [/var/task/bootstrap /opt/bootstrap]* 

Kesalahan ini biasanya terjadi ketika root paket penyebaran Anda tidak berisi file yang dapat dieksekusi bernama. `bootstrap` Misalnya, jika Anda menerapkan `provided.al2023` fungsi dengan file.zip, `bootstrap` file harus berada di root file.zip, bukan di direktori.

## Lambda: Operasi tidak dapat dilakukan ResourceConflictException
<a name="troubleshooting-invocation-ResourceConflictException"></a>

 **KesalahanResourceConflictException:***: Operasi tidak dapat dilakukan saat ini. Fungsi saat sedang dalam status: Tertunda* 

Saat Anda menghubungkan fungsi ke virtual private cloud (VPC) pada saat pembuatan, fungsi memasukkan status `Pending` sewaktu Lambda membuat antarmuka jaringan elastis. Selama waktu ini, Anda tidak dapat memanggil atau memodifikasi fungsi Anda. Jika Anda menghubungkan fungsi Anda ke VPC setelah pembuatan, Anda dapat memanggilnya saat pembaruan tertunda, tetapi Anda tidak dapat memodifikasi kode atau konfigurasinya.

Untuk informasi selengkapnya, lihat [Status fungsi Lambda](functions-states.md).

## Lambda: Fungsi tertahan dalam Tertunda
<a name="troubleshooting-invocation-pending"></a>

 **Kesalahan**: *Fungsi tertahan dalam status `Pending` selama beberapa menit.* 

Jika suatu fungsi tertahan di status `Pending` selama lebih dari enam menit, panggil salah satu operasi API berikut untuk membukanya:
+ [UpdateFunctionCode](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionCode.html)
+ [UpdateFunctionConfiguration](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionConfiguration.html)
+ [PublishVersion](https://docs.aws.amazon.com/lambda/latest/api/API_PublishVersion.html)

Lambda membatalkan operasi yang tertunda dan menempatkan fungsi ke keadaan `Failed`. Anda kemudian dapat mencoba pembaruan lain.

## Lambda: Salah satu fungsi menggunakan semua konkurensi
<a name="troubleshooting-invocation-allconcurrency"></a>

 **Masalah:** *Satu fungsi sedang menggunakan semua konkurensi yang tersedia, yang menyebabkan fungsi lain dibatasi.* 

Untuk membagi konkurensi AWS akun Anda yang tersedia di AWS Wilayah menjadi kumpulan, gunakan [konkurensi cadangan](configuration-concurrency.md). Konkurensi cadangan memastikan fungsi dapat selalu menskalakan ke konkurensi yang ditetapkan, dan fungsi tidak menskalakan melebihi konkurensi yang ditetapkan.

## Umum: Tidak dapat memanggil fungsi dengan akun atau layanan lain
<a name="troubleshooting-invocation-cannotinvoke"></a>

 **Masalah:** *Anda dapat memanggil fungsi secara langsung, tetapi tidak dijalankan ketika layanan atau akun lain memanggilnya.* 

Anda memberikan izin kepada akun dan [layanan lain](lambda-services.md) untuk memanggil fungsi dalam [kebijakan berbasis sumber daya](access-control-resource-based.md) milik fungsi. Jika pemanggil ada di akun lain, pengguna tersebut juga harus memiliki [izin untuk memanggil fungsi](access-control-identity-based.md). 

## Umum: Invokasi fungsi adalah perulangan
<a name="troubleshooting-invocation-loop"></a>

 **Masalah:** *Fungsi dipanggil secara berulang terus-menerus.* 

Ini biasanya terjadi ketika fungsi Anda mengelola sumber daya dalam AWS layanan yang sama yang memicunya. Misalnya, ini memungkinkan untuk membuat fungsi yang menyimpan objek dalam bucket Amazon Simple Storage Service (Amazon S3) yang dikonfigurasi dengan [notifikasi yang kembali memanggil fungsi](with-s3.md). Untuk menghentikan fungsi agar tidak berjalan, kurangi [konkurensi](lambda-concurrency.md) yang tersedia menjadi nol, yang membatasi semua pemanggilan future. Selanjutnya, identifikasi jalur kode atau kesalahan konfigurasi yang menyebabkan invokasi berulang. Lambda secara otomatis mendeteksi dan menghentikan loop rekursif untuk beberapa layanan dan. AWS SDKs Untuk informasi selengkapnya, lihat [Gunakan deteksi loop rekursif Lambda untuk mencegah loop tak terbatas](invocation-recursion.md).

## Lambda: Perutean alias dengan konkurensi terprovisi
<a name="troubleshooting-invocation-alias"></a>

 **Masalah:** *Konkurensi terprovisi melimpahkan invokasi selama perutean alias.* 

Lambda menggunakan model probabilistik sederhana untuk mendistribusikan lalu lintas di antara dua versi fungsi. Pada tingkat lalu lintas rendah, Anda mungkin melihat varians tinggi di antara persentase lalu lintas yang dikonfigurasi dan aktual di setiap versi. Jika fungsi Anda menggunakan konkurensi terprovisi, Anda dapat menghindari [invokasi limpahan](monitoring-metrics-types.md#invocation-metrics) dengan mengonfigurasi jumlah yang lebih tinggi dari instans konkurensi terprovisi selama perutean alias aktif. 

## Lambda: Mulai awal dengan konkurensi terprovisi
<a name="troubleshooting-invocation-coldstart"></a>

 **Masalah:** *Anda melihat mulai awal setelah mengaktifkan konkurensi terprovisi.* 

Ketika jumlah eksekusi bersamaan pada fungsi kurang dari atau sama dengan [tingkat konkurensi terprovisi yang dikonfigurasi](provisioned-concurrency.md), mulai awal seharusnya tidak ada. Untuk membantu Anda mengonfirmasi jika konkurensi terprovisi beroperasi secara normal, lakukan hal berikut:
+  [Periksa apakah concurrency terprovisi diaktifkan](provisioned-concurrency.md) pada versi fungsi atau alias.
**catatan**  
Konkurensi yang disediakan tidak dapat dikonfigurasi pada [versi fungsi yang tidak dipublikasikan ($LATEST).](configuration-versions.md)
+ Pastikan pemicu Anda memanggil versi fungsi atau alias yang benar. Misalnya, jika Anda menggunakan Amazon API Gateway, periksa API Gateway memanggil versi fungsi atau alias dengan konkurensi terprovisi, bukan $LATEST. [Untuk mengonfirmasi bahwa konkurensi yang disediakan sedang digunakan, Anda dapat memeriksa metrik AmazonProvisionedConcurrencyInvocations . CloudWatch ](monitoring-concurrency.md#provisioned-concurrency-metrics) Nilai bukan nol menunjukkan fungsi ini memproses invokasi pada lingkungan eksekusi yang diinisialisasi.
+ [Tentukan apakah konkurensi fungsi Anda melebihi tingkat konkurensi yang disediakan yang dikonfigurasi dengan memeriksa metrik. ProvisionedConcurrencySpilloverInvocations CloudWatch](monitoring-concurrency.md#provisioned-concurrency-metrics) Nilai bukan nol menunjukkan semua konkurensi terprovisi sedang digunakan dan beberapa invokasi terjadi dengan mulai awal.
+ Periksa [frekuensi invokasi](gettingstarted-limits.md#api-requests) (permintaan per detik). Fungsi dengan konkurensi terprovisi memiliki tingkat maksimum 10 permintaan per detik per konkurensi terprovisi. Misalnya, fungsi yang dikonfigurasi dengan 100 konkurensi terprovisi dapat menangani 1.000 permintaan per detik. Jika tingkat invokasi melebihi 1.000 permintaan per detik, beberapa mulai awal dapat terjadi.

## Lambda: Mulai awal dengan versi baru
<a name="troubleshooting-invocation-newversion"></a>

 **Masalah:** *Anda melihat mulai awal saat men-deploy versi baru dari fungsi Anda.* 

Ketika Anda memperbarui alias fungsi, Lambda secara otomatis menggeser konkurensi terprovisi ke versi baru berdasarkan bobot yang dikonfigurasi di alias.

 **Kesalahan: KMSDisabled** *Pengecualian: Lambda tidak dapat mendekripsi variabel lingkungan karena kunci KMS yang digunakan dinonaktifkan. Silakan periksa pengaturan kunci KMS fungsi.* 

Kesalahan ini dapat terjadi jika kunci AWS Key Management Service (AWS KMS) Anda dinonaktifkan, atau jika hibah yang memungkinkan Lambda menggunakan kunci dicabut. Jika pemberian izin tidak ada, konfigurasikan fungsi agar menggunakan kunci yang berbeda. Selanjutnya, atur ulang kunci kustom untuk membuat ulang pemberian izin.

## Lambda: Keluar Node.js yang tidak terduga saat runtime (Runtime. NodejsExit)
<a name="troubleshooting-invocation-nodejs-exit"></a>

**Masalah:** *Klien runtime Lambda mendeteksi kode keluar Node.js yang tidak terduga*.

Kesalahan ini terjadi ketika fungsi Anda keluar sebelum semua Promises diselesaikan, misalnya karena bug kode. Hal ini juga dapat terjadi ketika Node.js mendeteksi kebuntuan yang mencegah Promises diselesaikan. Kesalahan ini hanya memengaruhi penangan gaya asinkron, bukan penangan gaya panggilan balik.

**Runtime yang terpengaruh:** Node.js 18 dan yang lebih baru.

**Untuk mengatasi masalah ini:**

1. Periksa kode fungsi Anda untuk janji yang belum diselesaikan di penangan asinkron.

1. Pastikan semua janji diselesaikan dengan benar (diselesaikan atau ditolak) sebelum fungsi selesai.

1. Tinjau kode Anda untuk kondisi balapan potensial dalam operasi asinkron.

Untuk informasi selengkapnya tentang kode keluar Node.js dan penghentian proses, lihat [dokumentasi Node.js](https://nodejs.org/docs/latest/api/process.html#exit-codes).

## EFS: Fungsi tidak dapat memasang sistem file EFS
<a name="troubleshooting-invocation-efsmount"></a>

 **Kesalahan: EFSMountFailureException:** *Fungsi tidak dapat me-mount sistem file EFS dengan titik akses arn:aws:elasticfilesystem:us-east- 2:123456789012: access-point/fsap-015cxmplb72b405fd*. 

Permintaan pemasangan untuk sistem file fungsi ditolak. Periksa izin fungsi, dan konfirmasikan bahwa sistem file dan titik aksesnya sudah ada dan siap digunakan.

## EFS: Fungsi tidak dapat terhubung ke sistem file EFS
<a name="troubleshooting-invocation-efsconnect"></a>

 **Kesalahan: EFSMountConnectivityException:** *Fungsi tidak dapat terhubung ke sistem file Amazon EFS dengan titik akses arn:aws:elasticfilesystem:us-east- 2:123456789012: access-point/fsap-015cxmplb72b405fd. Periksa konfigurasi jaringan Anda dan coba kembali.* 

Fungsi tidak dapat membuat koneksi ke sistem file fungsi dengan protokol NFS (TCP port 2049). Periksa [grup keamanan dan konfigurasi perutean](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-files-prereq-policies.html) untuk subnet VPC.

Jika Anda mendapatkan kesalahan ini setelah memperbarui pengaturan konfigurasi VPC fungsi Anda, coba lepaskan dan pasang kembali sistem file.

## EFS: Fungsi tidak dapat memasang sistem file EFS karena waktu habis.
<a name="troubleshooting-invocation-efstimeout"></a>

 **Kesalahan: EFSMountTimeoutException:** *Fungsi tidak dapat me-mount sistem file EFS dengan titik akses {arn:aws:elasticfilesystem:us-east- 2:123456789012:access-point/fsap-015cxmplb72b405fd*} karena waktu pemasangan habis. 

Fungsi dapat terhubung ke sistem file fungsi, tetapi waktu operasi pemasangan habis. Coba lagi setelah beberapa saat dan pertimbangkan untuk membatasi [konkurensi](configuration-concurrency.md) fungsi guna mengurangi beban sistem file.

## File S3: Fungsi tidak dapat me-mount sistem file S3
<a name="troubleshooting-invocation-s3filesmount"></a>

 **Kesalahan: S3FilesMountFailureException:** *Fungsi tidak dapat me-mount sistem file Amazon S3 dengan titik akses arn:aws:s3files:us-east- 2:123456789012: access-point/fsap-123456789abcde*. 

Permintaan pemasangan untuk sistem file fungsi ditolak. Periksa izin fungsi, dan konfirmasikan bahwa sistem file dan titik aksesnya sudah ada dan siap digunakan.

## File S3: Fungsi tidak dapat terhubung ke sistem file S3
<a name="troubleshooting-invocation-s3filesconnect"></a>

 **Kesalahan: S3FilesMountConnectivityException:** *Fungsi tidak dapat terhubung ke sistem file Amazon S3 dengan titik akses arn:aws:s3files:us-east- 2:123456789012: access-point/fsap-123456789abcde. Periksa konfigurasi jaringan Anda dan coba kembali.* 

Fungsi tidak dapat membuat koneksi ke sistem file fungsi dengan protokol NFS (TCP port 2049). Periksa [grup keamanan dan konfigurasi perutean](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-files-prereq-policies.html) untuk subnet VPC.

Jika Anda mendapatkan kesalahan ini setelah memperbarui pengaturan konfigurasi VPC fungsi Anda, coba lepaskan dan pasang kembali sistem file.

## File S3: Fungsi tidak dapat me-mount sistem file S3 karena batas waktu
<a name="troubleshooting-invocation-s3filestimeout"></a>

 **Kesalahan: S3FilesMountTimeoutException:** *Fungsi tidak dapat me-mount sistem file S3 dengan titik akses {arn:aws:s3files:us-east- 2:123456789012: access-point/fsap-123456789abcde*} karena waktu pemasangan habis. 

Fungsi dapat terhubung ke sistem file fungsi, tetapi waktu operasi pemasangan habis. Coba lagi setelah beberapa saat dan pertimbangkan untuk membatasi [konkurensi](configuration-concurrency.md) fungsi guna mengurangi beban sistem file.

## Lambda: Lambda mendeteksi proses IO yang memakan waktu terlalu lama
<a name="troubleshooting-invocation-ioprocess"></a>

 *EFSIOException: Instance fungsi ini dihentikan karena Lambda mendeteksi proses IO yang memakan waktu terlalu lama.* 

Waktu invokasi sebelumnya habis dan Lambda tidak dapat menghentikan handler fungsi. Masalah ini dapat terjadi ketika sistem file yang dilampirkan kehabisan kredit lonjakan dan throughput awal tidak cukup. Untuk meningkatkan throughput, Anda dapat meningkatkan ukuran sistem file atau menggunakan throughput terprovisi.

## Wadah: CodeArtifactUserException kesalahan
<a name="troubleshooting-deployment-container-artifact"></a>

**Kesalahan:** *pesan CodeArtifactUserPendingException kesalahan*

Optimasi CodeArtifact sedang menunggu. Fungsi transisi ke [status Aktif](functions-states.md) saat Lambda menyelesaikan pengoptimalan. Kode respons HTTP 409.

**Kesalahan:** *pesan CodeArtifactUserDeletedException kesalahan*

 CodeArtifact Itu dijadwalkan akan dihapus. Kode respons HTTP 409.

**Kesalahan:** *pesan CodeArtifactUserFailedException kesalahan*

Lambda gagal mengoptimalkan kode. Anda perlu memperbaiki kode dan mengunggahnya lagi. Kode respons HTTP 409.

## Wadah: InvalidEntrypoint kesalahan
<a name="troubleshooting-deployment-container-entrypoint"></a>

**Kesalahan:** *Runtime. ExitError atau “ErrorType”: “Runtime. InvalidEntrypoint*”

Verifikasi bahwa ENTRYPOINT untuk gambar kontainer Anda mencakup jalur absolut sebagai lokasi. Selain itu, verifikasi bahwa gambar tidak berisi symlink sebagai ENTRYPOINT.

**Kesalahan:** *Anda menggunakan CloudFormation template, dan wadah ENTRYPOINT Anda sedang diganti dengan nilai nol atau* kosong.

Tinjau [ImageConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-function-imageconfig.html)sumber daya dalam CloudFormation template. Jika Anda menyatakan sumber daya `ImageConfig` di templat Anda, Anda harus menyediakan nilai non-kosong untuk ketiga properti.