View a markdown version of this page

Memantau Fungsi Web Lambda - AWS Lambda

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

Memantau Fungsi Web Lambda

AWS Lambda Fungsi Web mempublikasikan metrik dan log ke Amazon CloudWatch. Gunakan mereka untuk mengidentifikasi kemacetan kinerja, kesalahan debug, dan setel alarm yang mengingatkan Anda saat tingkat kesalahan melonjak selama penerapan kenari atau pergeseran lalu lintas.

Untuk Fungsi Web yang menyajikan permintaan di lebih dari satu Wilayah AWS, Lambda mengumpulkan metrik dan log di setiap Wilayah tempat permintaan dijalankan. Ini memusatkan metrik permintaan dan log ke Wilayah rumah Fungsi Web, sehingga Anda dapat memantau seluruh aplikasi dari satu tempat. Metrik penggunaan dan pembatasan tetap berada di Wilayah tempat metrik tersebut dipancarkan, karena kuota yang dideskripsikan berlaku per Wilayah.

Setiap jenis telemetri menjawab pertanyaan yang berbeda:

Untuk memecahkan masalah di Wilayah tempat permintaan dijalankan, gunakan grup log Regional/aws/lambda/web/function-name.local, tempat lingkungan eksekusi menulis log. Lambda memusatkan log secara asinkron ke grup /aws/lambda/web/function-name log di Wilayah asal. Untuk informasi tentang Wilayah dan replikasi asal, lihatMulti-Region penyebaran.

Diagram berikut menunjukkan bagaimana Lambda menulis dan memusatkan telemetri di seluruh Wilayah. Metrik permintaan di AWS/Lambda/Web namespace dan log dipusatkan di Wilayah beranda. Metrik penggunaan di AWS/Lambda/Web/Usage namespace tetap ada di setiap Wilayah.

Lambda di setiap Wilayah menulis log dan metrik penggunaan di Wilayah tersebut. Lambda memusatkan metrik permintaan dan log secara asinkron di Wilayah asal. Metrik penggunaan tetap ada di setiap Wilayah.

Penagihan telemetri

Telemetri untuk Fungsi Web ditagih sebagai berikut:

Telemetri Penagihan
Metrik diterbitkan oleh Lambda Bebas. Lambda menerbitkan metrik di AWS/Lambda/Web/Usage ruang nama AWS/Lambda/Web dan tanpa biaya kepada Anda.
Log Anda membayar biaya CloudWatch Log Amazon standar untuk menulis dan menyimpan log di grup .local log di setiap Wilayah. Anda juga membayar untuk menyimpan salinan di grup log terpusat di Wilayah asal. Lambda menyalin setiap peristiwa log ke Wilayah asal tanpa biaya. Sentralisasi pertama dari acara log gratis.
Metrik-metrik kustom Metrik khusus yang Anda terbitkan menggunakan format metrik yang disematkan dikenakan biaya konsumsi CloudWatch Log Amazon dan CloudWatch biaya metrik khusus. Sentralisasi pertama dari acara log gratis. Untuk informasi selengkapnya, lihat Menerbitkan metrik kustom dengan format metrik yang disematkan.

Untuk harga saat ini, lihat CloudWatchharga Amazon.

Pertimbangan telemetri

Tinjau perilaku berikut sebelum Anda membuat dasbor, alarm, atau otomatisasi pada telemetri Fungsi Web.

AWS X-Ray melacak

Jika permintaan menyertakan X-Amzn-Trace-Id header, Lambda meneruskannya ke aplikasi Anda tidak berubah. Lambda tidak menambahkan header jejak ke permintaan yang tidak menyertakannya, dan Fungsi Web tidak membuat segmen layanan Lambda. Karena penelepon mengatur header ini, perlakukan nilainya sebagai masukan klien. Untuk merekam jejak, kirim data jejak dari kode Anda langsung ke X-Ray, misalnya dengan AWS Distro for OpenTelemetry, dan berikan izin peran eksekusi Anda untuk X-Ray menulis.

Latensi sentralisasi

Metrik dan log mencapai Wilayah asal secara asinkron. Dalam kondisi mapan, Lambda biasanya memusatkan metrik dan log dalam beberapa menit. Telemetri dapat tiba nanti selama gangguan layanan.

Saat Anda membuat titik akhir yang berjalan di lebih dari satu Wilayah, Lambda menyiapkan sentralisasi metrik untuk setiap Region replika. CloudWatch dapat memakan waktu beberapa menit setelah titik akhir menjadi aktif di Wilayah untuk mulai memusatkan metriknya dari Wilayah tersebut. Metrik yang dipancarkan sebelum kemudian tetap hanya di Wilayah itu dan tidak ditambahkan ke Wilayah asal nanti.

Perhitungkan latensi ini dalam otomatisasi penerapan. Jika pipeline membuat Fungsi Web atau titik akhir dan kemudian segera memeriksa metrik atau log di Wilayah asal, berikan waktu untuk telemetri pertama tiba daripada memperlakukan ketidakhadirannya sebagai kegagalan.

Telemetri di setiap Wilayah

Lambda menulis telemetri di setiap Wilayah di mana permintaan dijalankan dan kemudian memusatkan sebagian darinya ke Wilayah asal. Apa yang dapat Anda andalkan di setiap Wilayah tergantung pada jenis telemetri:

Minta metrik () AWS/Lambda/Web

Lambda juga dapat menulis metrik ini di Wilayah lain tempat permintaan dijalankan. Mereka dapat berubah atau dihapus tanpa pemberitahuan, jadi sebaiknya Anda tidak bergantung padanya dan sebagai gantinya gunakan nilai terpusat di Wilayah rumah untuk alarm, dasbor, dan otomatisasi. Nilai terpusat mencakup permintaan dari setiap Wilayah yang dilayani titik akhir.

Metrik penggunaan dan pelambatan () AWS/Lambda/Web/Usage

Metrik ini hanya ada di Wilayah tempat permintaan dilayani. Alarm pada mereka di setiap Wilayah. Lihat perinciannya di Penggunaan regional dan metrik pelambatan.

Beberapa catatan

Di setiap Wilayah, grup .local log hanya menyimpan log dari Wilayah tersebut. Log ini tersedia sebelum sentralisasi selesai dan tidak terpengaruh oleh penundaan sentralisasi, yang membuatnya berguna untuk men-debug masalah Regional. Grup log terpusat di Wilayah asal menyimpan log dari setiap Wilayah. Buat kueri bersama, langganan, dan kebijakan retensi pada grup log terpusat. Lihat perinciannya di Grup log.

Gangguan layanan

Gangguan infrastruktur, seperti pemadaman Availability Zone, dapat menunda telemetri, dan beberapa metrik dan peristiwa log mungkin hilang. Jika Wilayah asal terganggu, metrik dan log terpusat di Wilayah asal dapat ditunda atau tidak tersedia. Metrik penggunaan dan grup .local log di Wilayah lain tidak bergantung pada sentralisasi dan terus menerima telemetri dari Wilayah tersebut.

Telemetri dipancarkan atas dasar upaya terbaik. Pada kesempatan langka, telemetri dapat dijatuhkan atau diduplikasi. Jangan memperlakukan telemetri Web Function sebagai catatan audit. Untuk mengaudit perubahan konfigurasi dan pemanggilan, gunakan. AWS CloudTrail Untuk informasi selengkapnya, lihat Logging panggilan API Fungsi Web menggunakan AWS CloudTrail.

Izin yang diperlukan

Logging memerlukan izin Amazon CloudWatch Logs logs:CreateLogGrouplogs:CreateLogStream, dan logs:PutLogEvents dalam peran eksekusi Fungsi Web Anda. Tanpa mereka, Lambda tidak dapat membuat grup log atau menulis peristiwa log, dan output aplikasi Anda hilang. Untuk contoh kebijakan, lihat Peran eksekusi.

Lambda menerbitkan metrik di AWS/Lambda/Web/Usage ruang nama AWS/Lambda/Web dan itu sendiri, sehingga mereka tidak memerlukan izin dalam peran eksekusi, termasuk. cloudwatch:PutMetricData Format metrik yang disematkan juga tidak memanggil PutMetricData secara langsung, tetapi memerlukan izin CloudWatch Log Amazon yang sama, karena Lambda mengekstrak metrik dari peristiwa log Anda.