Pilih preferensi cookie Anda

Kami menggunakan cookie penting serta alat serupa yang diperlukan untuk menyediakan situs dan layanan. Kami menggunakan cookie performa untuk mengumpulkan statistik anonim sehingga kami dapat memahami cara pelanggan menggunakan situs dan melakukan perbaikan. Cookie penting tidak dapat dinonaktifkan, tetapi Anda dapat mengklik “Kustom” atau “Tolak” untuk menolak cookie performa.

Jika Anda setuju, AWS dan pihak ketiga yang disetujui juga akan menggunakan cookie untuk menyediakan fitur situs yang berguna, mengingat preferensi Anda, dan menampilkan konten yang relevan, termasuk iklan yang relevan. Untuk menerima atau menolak semua cookie yang tidak penting, klik “Terima” atau “Tolak”. Untuk membuat pilihan yang lebih detail, klik “Kustomisasi”.

Pencatatan dan metrik untuk AWS Lambda - AWS Bimbingan Preskriptif

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

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

Pencatatan dan metrik untuk AWS Lambda

Lambda menghilangkan kebutuhan untuk mengelola dan memantau server untuk beban kerja Anda dan secara otomatis bekerja dengan CloudWatch Metrik dan CloudWatch Log tanpa konfigurasi atau instrumentasi lebih lanjut dari kode aplikasi Anda. Bagian ini membantu Anda memahami karakteristik kinerja sistem yang digunakan oleh Lambda dan bagaimana pilihan konfigurasi Anda memengaruhi kinerja. Ini juga membantu Anda mencatat dan memantau fungsi Lambda Anda untuk pengoptimalan kinerja dan mendiagnosis masalah tingkat aplikasi.

Pencatatan fungsi Lambda

Lambda secara otomatis mengalirkan output standar dan pesan kesalahan standar dari fungsi Lambda ke CloudWatch Log, tanpa memerlukan driver logging. Lambda juga secara otomatis menyediakan kontainer yang menjalankan fungsi Lambda Anda dan mengonfigurasinya untuk mengeluarkan pesan log dalam aliran log terpisah.

Pemanggilan berikutnya dari fungsi Lambda Anda dapat menggunakan kembali wadah dan output yang sama ke aliran log yang sama. Lambda juga dapat menyediakan wadah baru dan menampilkan pemanggilan ke aliran log baru.

Lambda secara otomatis membuat grup log saat fungsi Lambda Anda pertama kali dipanggil. Fungsi Lambda dapat memiliki beberapa versi dan Anda dapat memilih versi yang ingin Anda jalankan. Semua log untuk pemanggilan fungsi Lambda disimpan dalam grup log yang sama. Nama tidak dapat diubah dan dalam /aws/lambda/<YourLambdaFunctionName> format. Aliran log terpisah dibuat di grup log untuk setiap instance fungsi Lambda. Lambda memiliki konvensi penamaan standar untuk aliran log yang menggunakan format. YYYY/MM/DD/[<FunctionVersion>]<InstanceId> InstanceIdIni dihasilkan oleh AWS untuk mengidentifikasi instance fungsi Lambda.

Kami menyarankan Anda memformat pesan log Anda dalam format JSON karena Anda dapat menanyakannya dengan lebih mudah dengan Wawasan CloudWatch Log. Mereka juga dapat lebih mudah disaring dan diekspor. Anda dapat menggunakan pustaka logging untuk menyederhanakan proses ini atau menulis fungsi penanganan log Anda sendiri. Sebaiknya gunakan pustaka logging untuk membantu memformat dan mengklasifikasikan pesan log. Misalnya, jika fungsi Lambda Anda ditulis dengan Python, Anda dapat menggunakan modul logging Python untuk mencatat pesan dan mengontrol format output. Lambda secara native menggunakan library logging Python untuk fungsi Lambda yang ditulis dengan Python, dan Anda dapat mengambil dan menyesuaikan logger dalam fungsi Lambda Anda. AWS Labs telah menciptakan AWS Lambda Powertools untuk toolkit pengembang Python untuk membuatnya lebih mudah untuk memperkaya pesan log dengan data kunci seperti cold start. Toolkit ini tersedia untuk Python, Java, TypeScript, dan .NET.

Praktik terbaik lainnya adalah mengatur tingkat keluaran log dengan menggunakan variabel dan menyesuaikannya berdasarkan lingkungan dan kebutuhan Anda. Kode fungsi Lambda Anda, selain pustaka yang digunakan, dapat menampilkan sejumlah besar data log tergantung pada tingkat keluaran log. Ini dapat memengaruhi biaya pencatatan Anda dan memengaruhi kinerja.

Lambda memungkinkan Anda untuk mengatur variabel lingkungan untuk lingkungan runtime fungsi Lambda Anda tanpa memperbarui kode Anda. Misalnya, Anda dapat membuat variabel LAMBDA_LOG_LEVEL lingkungan yang mendefinisikan tingkat keluaran log yang dapat Anda ambil dari kode Anda. Contoh berikut mencoba untuk mengambil variabel LAMBDA_LOG_LEVEL lingkungan dan menggunakan nilai untuk menentukan output logging. Jika variabel lingkungan tidak diatur, defaultnya ke level. INFO

import logging from os import getenv logger = logging.getLogger() log_level = getenv("LAMBDA_LOG_LEVEL", "INFO") level = logging.getLevelName(log_level) logger.setLevel(level)

Mengirim log ke tujuan lain dari CloudWatch

Anda dapat mengirim log ke tujuan lain (misalnya, OpenSearch Layanan Amazon atau fungsi Lambda) dengan menggunakan filter langganan. Jika Anda tidak menggunakan OpenSearch Layanan Amazon, Anda dapat menggunakan fungsi Lambda untuk memproses log dan mengirimkannya ke AWS layanan pilihan Anda menggunakan. AWS SDKs

Anda juga dapat menggunakan SDKs untuk tujuan log di luar AWS Cloud di fungsi Lambda Anda untuk langsung mengirim pernyataan log ke tujuan pilihan Anda. Jika Anda memilih opsi ini, kami sarankan Anda mempertimbangkan dampak latensi, waktu pemrosesan tambahan, penanganan kesalahan dan coba lagi, dan penggabungan logika operasional ke fungsi Lambda Anda.

Metrik fungsi Lambda

Lambda memungkinkan Anda menjalankan kode Anda tanpa mengelola atau menskalakan server dan ini hampir menghilangkan beban audit dan diagnostik tingkat sistem. Namun, tetap penting untuk memahami metrik kinerja dan pemanggilan di tingkat sistem untuk fungsi Lambda Anda. Ini membantu Anda mengoptimalkan konfigurasi sumber daya dan meningkatkan kinerja kode. Memantau dan mengukur kinerja secara efektif dapat meningkatkan pengalaman pengguna dan menurunkan biaya Anda dengan mengukur fungsi Lambda Anda dengan tepat. Biasanya, beban kerja yang berjalan sebagai fungsi Lambda juga memiliki metrik tingkat aplikasi yang perlu ditangkap dan dianalisis. Lambda secara langsung mendukung format metrik yang disematkan untuk mempermudah pengambilan metrik tingkat aplikasi CloudWatch .

Metrik tingkat sistem

Lambda secara otomatis terintegrasi dengan CloudWatch Metrik dan menyediakan satu set metrik standar untuk fungsi Lambda Anda. Lambda juga menyediakan dasbor pemantauan terpisah untuk setiap fungsi Lambda dengan metrik ini. Dua metrik penting yang perlu Anda pantau adalah kesalahan dan kesalahan pemanggilan. Memahami perbedaan antara kesalahan pemanggilan dan jenis kesalahan lainnya membantu Anda mendiagnosis dan mendukung penerapan Lambda.

Kesalahan pemanggilan mencegah fungsi Lambda Anda berjalan. Kesalahan ini terjadi sebelum kode Anda dijalankan sehingga Anda tidak dapat menerapkan penanganan kesalahan dalam kode Anda untuk mengidentifikasi mereka. Sebagai gantinya, Anda harus mengonfigurasi alarm untuk fungsi Lambda Anda yang mendeteksi kesalahan ini dan memberi tahu pemilik operasi dan beban kerja. Kesalahan ini sering terkait dengan kesalahan konfigurasi atau izin dan dapat terjadi karena perubahan konfigurasi atau izin Anda. Kesalahan pemanggilan mungkin memulai percobaan ulang, yang menyebabkan beberapa pemanggilan fungsi Anda.

Fungsi Lambda yang berhasil dipanggil mengembalikan respons HTTP 200 bahkan jika pengecualian dilemparkan oleh fungsi tersebut. Fungsi Lambda Anda harus menerapkan penyerahan kesalahan dan memunculkan pengecualian sehingga Errors metrik menangkap dan mengidentifikasi fungsi Lambda Anda yang gagal. Anda harus mengembalikan respons yang diformat dari pemanggilan fungsi Lambda yang menyertakan informasi untuk menentukan apakah proses gagal sepenuhnya, sebagian, atau berhasil.

CloudWatch menyediakan Wawasan CloudWatch Lambda yang dapat Anda aktifkan untuk fungsi Lambda individual. Lambda Insights mengumpulkan, menggabungkan, dan merangkum metrik tingkat sistem (misalnya, waktu CPU, memori, disk, dan penggunaan jaringan). Lambda Insights juga mengumpulkan, mengumpulkan, dan merangkum informasi diagnostik (misalnya, start dingin dan penutupan pekerja Lambda) untuk membantu Anda mengisolasi dan menyelesaikan masalah dengan cepat.

Lambda Insights menggunakan format metrik yang disematkan untuk secara otomatis memancarkan informasi kinerja ke grup /aws/lambda-insights/ log dengan awalan nama aliran log berdasarkan nama fungsi Lambda Anda. Peristiwa log kinerja ini membuat CloudWatch metrik yang menjadi dasar CloudWatch dasbor otomatis. Kami menyarankan Anda mengaktifkan Lambda Insights untuk pengujian kinerja dan lingkungan produksi. Metrik tambahan yang dibuat oleh Lambda Insights memory_utilization mencakup yang membantu mengukur fungsi Lambda dengan benar sehingga Anda menghindari pembayaran untuk kapasitas yang tidak diperlukan.

Metrik aplikasi

Anda juga dapat membuat dan menangkap metrik aplikasi Anda sendiri CloudWatch menggunakan format metrik yang disematkan. Anda dapat memanfaatkan pustaka yang disediakan AWS untuk format metrik yang disematkan untuk membuat dan memancarkan pernyataan format metrik yang disematkan. CloudWatch Fasilitas CloudWatch logging Lambda terintegrasi dikonfigurasi untuk memproses dan mengekstrak pernyataan format metrik tertanam yang diformat dengan tepat.

PrivasiSyarat situsPreferensi cookie
© 2025, Amazon Web Services, Inc. atau afiliasinya. Semua hak dilindungi undang-undang.