

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

# Fungsi debug lokal dengan AWS SAM
<a name="serverless-sam-cli-using-debugging"></a>

Anda dapat menggunakan AWS SAM berbagai AWS toolkit dan debugger untuk menguji dan men-debug aplikasi tanpa server Anda secara lokal. Langkah-through debugging fungsi Lambda Anda memungkinkan Anda mengidentifikasi dan memperbaiki masalah dalam aplikasi Anda satu baris atau instruksi pada satu waktu di lingkungan lokal Anda.

Beberapa cara Anda dapat melakukan debugging step-through lokal termasuk pengaturan breakpoint, memeriksa variabel, dan mengeksekusi kode fungsi satu baris pada satu waktu. Debug bertahap lokal memperketat putaran umpan balik dengan memungkinkan Anda menemukan dan memecahkan masalah yang mungkin Anda alami di cloud.

Anda dapat menggunakan AWS Toolkit untuk men-debug, dan Anda juga dapat menjalankan AWS SAM dalam mode debug. Lihat topik di bagian ini untuk detailnya. 

## Menggunakan AWS Toolkit
<a name="serverless-sam-cli-using-aws-toolkits"></a>

AWS Toolkit adalah plugin lingkungan pengembangan terintegrasi (IDE) yang memberi Anda kemampuan untuk melakukan banyak tugas debugging umum, seperti mengatur breakpoint, memeriksa variabel, dan mengeksekusi kode fungsi satu baris pada satu waktu. AWS Toolkit memudahkan Anda untuk mengembangkan, men-debug, dan menyebarkan aplikasi tanpa server yang dibuat menggunakan. AWS SAM Mereka memberikan pengalaman untuk membangun, menguji, men-debug, men-deploy, dan menjalankan fungsi Lambda yang terintegrasi ke dalam IDE Anda.

Untuk informasi selengkapnya tentang AWS Toolkit yang dapat Anda gunakan AWS SAM, lihat berikut ini:
+ [AWS Toolkit for Visual Studio Code](https://docs.aws.amazon.com/toolkit-for-vscode/latest/userguide/)
+ [AWS Cloud9](https://docs.aws.amazon.com/cloud9/latest/user-guide/)
+ [AWS Toolkit for JetBrains](https://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/)

Ada berbagai AWS Toolkit yang bekerja dengan kombinasi IDEs dan runtime yang berbeda. Tabel berikut mencantumkan IDE/runtime kombinasi umum yang mendukung proses debug aplikasi secara bertahap: AWS SAM 


| IDE | Waktu aktif | AWS Toolkit | Instruksi untuk debugging bertahap | 
| --- | --- | --- | --- | 
| Kode Studio Visual |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/serverless-application-model/latest/developerguide/serverless-sam-cli-using-debugging.html)  | AWS Toolkit for Visual Studio Code | [Bekerja dengan AWS Serverless Application](https://docs.aws.amazon.com/toolkit-for-vscode/latest/userguide/serverless-apps.html) dalam Panduan Pengguna AWS Toolkit for Visual Studio Code   | 
| AWS Cloud9 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/serverless-application-model/latest/developerguide/serverless-sam-cli-using-debugging.html)  | AWS Cloud9, dengan AWS Toolkit diaktifkan 1 |  [Bekerja dengan aplikasi AWS tanpa server menggunakan AWS Toolkit di Panduan](https://docs.aws.amazon.com/cloud9/latest/user-guide/serverless-apps-toolkit.html) *Pengguna.AWS Cloud9 *  | 
| WebStorm | Node.js | AWS Toolkit for JetBrains2 |  [Menjalankan (memanggil) atau debugging fungsi lokal](https://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/invoke-lambda.html) di *AWS Toolkit for JetBrains*  | 
| PyCharm | Python | AWS Toolkit for JetBrains2 |  [Menjalankan (memanggil) atau debugging fungsi lokal](https://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/invoke-lambda.html) di *AWS Toolkit for JetBrains*  | 
| Penunggang | .NET | AWS Toolkit for JetBrains2 |  [Menjalankan (memanggil) atau debugging fungsi lokal](https://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/invoke-lambda.html) di *AWS Toolkit for JetBrains*  | 
| IntelliJ | Java | AWS Toolkit for JetBrains2 |  [Menjalankan (memanggil) atau debugging fungsi lokal](https://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/invoke-lambda.html) di *AWS Toolkit for JetBrains*  | 
| GoLand | Go | AWS Toolkit for JetBrains2 |  [Menjalankan (memanggil) atau debugging fungsi lokal](https://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/invoke-lambda.html) di *AWS Toolkit for JetBrains*  | 

**Catatan:**

1.  AWS Cloud9 Untuk menggunakan AWS SAM aplikasi debug step-through, AWS Toolkit harus diaktifkan. Untuk informasi selengkapnya, lihat [Mengaktifkan AWS Toolkit](https://docs.aws.amazon.com/cloud9/latest/user-guide/toolkit-welcome.html#access-toolkit) di *AWS Cloud9 Panduan Pengguna*.

1. Untuk menggunakan AWS SAM aplikasi debug AWS Toolkit for JetBrains to step-through, Anda harus terlebih dahulu menginstal dan mengkonfigurasinya dengan mengikuti petunjuk yang ditemukan di [Instalasi AWS Toolkit for JetBrains di](https://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/setup-toolkit.html). *AWS Toolkit for JetBrains*

## Berjalan AWS SAM secara lokal dalam mode debug
<a name="serverless-sam-cli-running-locally"></a>

[https://pypi.org/project/ptvsd/](https://pypi.org/project/ptvsd/)

Untuk menjalankan AWS SAM dalam mode debug, gunakan perintah [sam local invoke](sam-cli-command-reference-sam-local-invoke.md) atau [sam local start-api](sam-cli-command-reference-sam-local-start-api.md) dengan `-d` opsi `--debug-port` atau.

Contoh:

```
# Invoke a function locally in debug mode on port 5858
sam local invoke -d 5858 <function logical id>

# Start local API Gateway in debug mode on port 5858
sam local start-api -d 5858
```

**catatan**  
Jika Anda menggunakan `sam local start-api`, instans API Gateway lokal memperlihatkan semua fungsi Lambda Anda. Namun, karena Anda dapat menentukan satu port debug, Anda hanya dapat men-debug satu fungsi dalam satu waktu. Anda perlu memanggil API Anda sebelum AWS SAMCLI mengikat ke port, yang memungkinkan debugger terhubung.