

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

# Memecahkan masalah dengan streaming respons di API Gateway
<a name="response-streaming-troubleshoot"></a>

Panduan pemecahan masalah berikut dapat membantu menyelesaikan masalah dengan Anda APIs yang menggunakan streaming respons.

## Pemecahan masalah umum
<a name="response-streaming-general-troubleshooting"></a>

Anda dapat menggunakan tab pengujian [TestInvokeMethod](https://docs.aws.amazon.com/apigateway/latest/api/API_TestInvokeMethod.html)atau konsol untuk menguji respons streaming Anda. Pertimbangan berikut dapat memengaruhi penggunaan pemanggilan pengujian Anda untuk streaming respons:
+ Saat Anda menguji metode Anda, API Gateway menyangga payload respons yang dialirkan. Setelah salah satu kondisi berikut terpenuhi, API Gateway mengembalikan respons satu kali yang berisi muatan buffer:
  + Permintaan selesai
  + 35 detik telah berlalu
  + Lebih dari 1 MB payload respons telah di-buffer
+ Jika lebih dari 35 detik berlalu sebelum metode Anda mengembalikan status respons HTTP dan semua header, maka status respons yang dikembalikan adalah 0. TestInvokeMethod 
+ API Gateway tidak menghasilkan log eksekusi apa pun.

Setelah menerapkan API, Anda dapat menguji respons streaming dengan menggunakan perintah curl. Kami menyarankan Anda menggunakan `-i` opsi untuk menyertakan header respons protokol dalam output. Untuk melihat data respons saat tiba, gunakan opsi curl `--no-buffer`

## Memecahkan masalah kesalahan cURL
<a name="response-streaming-troubleshoot-curl-error"></a>

Jika Anda menguji integrasi dan Anda menerima kesalahan`curl: (18) transfer closed with outstanding read data remaining`, pastikan batas waktu integrasi Anda cukup lama. Jika Anda menggunakan fungsi Lambda, Anda perlu memperbarui batas waktu respons fungsi Lambda. Untuk informasi selengkapnya, lihat [Mengonfigurasi batas waktu fungsi Lambda](https://docs.aws.amazon.com/lambda/latest/dg/configuration-timeout.html).

## Memecahkan masalah menggunakan pencatatan akses
<a name="response-streaming-troubleshoot-access-logging"></a>

Anda dapat menggunakan log akses untuk tahap REST API untuk mencatat dan memecahkan masalah aliran respons Anda. Selain variabel yang ada, Anda dapat menggunakan variabel log akses berikut:

`$context.integration.responseTransferMode`  
Mode transfer respons integrasi Anda. Ini bisa salah satu `BUFFERED` atau`STREAMED`.

`$context.integration.timeToAllHeaders`  
Waktu antara saat API Gateway menetapkan koneksi integrasi saat menerima semua header respons integrasi dari klien.

`$context.integration.timeToFirstContent`  
Waktu antara saat API Gateway menetapkan koneksi integrasi saat menerima byte konten pertama.

`$context.integration.latency` atau `$context.integrationLatency`  
Waktu ketika API Gateway menetapkan koneksi integrasi saat aliran respons integrasi selesai.

Gambar berikut menunjukkan bagaimana variabel log akses ini mewakili komponen yang berbeda dari aliran respons.

![\[Akses variabel log untuk streaming respons di API Gateway\]](http://docs.aws.amazon.com/id_id/apigateway/latest/developerguide/images/response-streaming-figure.png)


Untuk informasi selengkapnya tentang log akses, lihat [Siapkan CloudWatch logging untuk REST APIs di API Gateway](set-up-logging.md). Anda juga dapat menggunakan X-Ray untuk memantau aliran respons Anda. Lihat informasi yang lebih lengkap di [Lacak permintaan pengguna ke REST APIs menggunakan X-Ray di API Gateway](apigateway-xray.md).