Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Mengkonfigurasi grup CloudWatch log
Secara default, CloudWatch secara otomatis membuat grup log bernama /aws/lambda/<function name> untuk Fungsi Peristiwa Lambda Anda saat pertama kali dipanggil. Untuk mengonfigurasi Fungsi Peristiwa untuk mengirim log ke grup log yang ada, atau untuk membuat grup log baru untuk Fungsi Acara, Anda dapat menggunakan konsol Lambda atau. AWS CLI Anda juga dapat mengonfigurasi grup log kustom menggunakan perintah API CreateFunctiondan UpdateFunctionConfigurationLambda dan sumber daya AWS Serverless Application Model (AWS SAM) AWS: :Serverless: :Function.
Anda dapat mengonfigurasi beberapa Fungsi Peristiwa Lambda untuk mengirim log ke grup log yang sama CloudWatch . Misalnya, Anda dapat menggunakan grup log tunggal untuk menyimpan log untuk semua Fungsi Peristiwa Lambda yang membentuk aplikasi tertentu. Saat Anda menggunakan grup log kustom untuk Fungsi Peristiwa Lambda, aliran log yang dibuat Lambda menyertakan nama Fungsi Acara dan versi Fungsi Peristiwa. Ini memastikan bahwa pemetaan antara pesan log dan Fungsi Peristiwa dipertahankan, bahkan jika Anda menggunakan grup log yang sama untuk beberapa Fungsi Peristiwa.
Format penamaan aliran log untuk grup log kustom mengikuti konvensi ini:
YYYY/MM/DD/<function_name>[<function_version>][<execution_environment_GUID>]Perhatikan bahwa saat mengonfigurasi grup log kustom, nama yang Anda pilih untuk grup log harus mengikuti aturan penamaan CloudWatch Log. Selain itu, nama grup log kustom tidak boleh dimulai dengan stringaws/. Jika Anda membuat grup log kustom dimulai denganaws/, Lambda tidak akan dapat membuat grup log. Sebagai akibatnya, log Event Function Anda tidak akan dikirim ke CloudWatch.
Untuk mengubah grup log fungsi (konsol)
-
Buka halaman Fungsi Acara
konsol Lambda. -
Pilih Fungsi Acara.
-
Pada halaman konfigurasi Fungsi Acara, pilih Alat pemantauan dan operasi.
-
Di panel konfigurasi Logging, pilih Edit.
-
Di panel grup Logging, untuk grup CloudWatch log, pilih Kustom.
-
Di bawah Grup log kustom, masukkan nama grup CloudWatch log yang Anda inginkan untuk mengirim log ke fungsi Anda. Jika Anda memasukkan nama grup log yang ada, maka fungsi Anda akan menggunakan grup itu. Jika tidak ada grup log dengan nama yang Anda masukkan, maka Lambda akan membuat grup log baru untuk fungsi Anda dengan nama itu.
Untuk mengubah grup log Fungsi Acara (AWS CLI)
-
Untuk mengubah grup log dari Fungsi Peristiwa yang ada, gunakan perintah update-function-configuration
. aws lambda update-function-configuration \ --function-name myFunction \ --logging-config LogGroup=myLogGroup
Untuk menentukan grup log kustom saat Anda membuat Fungsi Acara (AWS CLI)
-
Untuk menentukan grup log kustom saat Anda membuat Fungsi Peristiwa Lambda baru menggunakan AWS CLI, gunakan opsi.
--logging-configContoh perintah berikut membuat Node.js Lambda Event Function yang mengirimkan log ke grup log bernama.myLogGroupaws lambda create-function \ --function-name myFunction \ --runtime nodejs24.x \ --handler index.handler \ --zip-file fileb://function.zip \ --role arn:aws:iam::123456789012:role/LambdaRole \ --logging-config LogGroup=myLogGroup
Izin peran eksekusi
Agar Fungsi Acara Anda mengirim CloudWatch log ke Log, ia harus memiliki PutLogEvents izin log:. Saat Anda mengonfigurasi grup log Fungsi Acara menggunakan konsol Lambda, Lambda menambahkan izin ini ke peran dalam kondisi berikut:
-
Tujuan layanan diatur ke CloudWatch Log
-
Peran eksekusi Event Function Anda tidak memiliki izin untuk mengunggah CloudWatch log ke Log (tujuan default)
catatan
Lambda tidak menambahkan izin Put untuk tujuan log Amazon S3 atau Firehose.
Ketika Lambda menambahkan izin ini, ia memberikan izin Fungsi Acara untuk mengirim log ke grup log Log mana pun CloudWatch .
Untuk mencegah Lambda memperbarui peran eksekusi Fungsi Acara secara otomatis dan mengeditnya secara manual, perluas Izin dan hapus centang Tambahkan izin yang diperlukan.
Saat Anda mengonfigurasi grup log Fungsi Acara menggunakan AWS CLI, Lambda tidak akan menambahkan izin secara otomatis. logs:PutLogEvents Tambahkan izin ke peran eksekusi Fungsi Acara Anda jika belum memilikinya. Izin ini termasuk dalam kebijakan yang AWSLambdaBasicExecutionRole
CloudWatch logging untuk Instans Terkelola Lambda
Saat menggunakan Instans Terkelola Lambda, ada pertimbangan tambahan untuk mengirim log ke Log: CloudWatch
Persyaratan jaringan VPC
Instans Terkelola Lambda berjalan pada instans EC2 milik pelanggan dalam VPC Anda. Untuk mengirim CloudWatch log ke Log dan trace ke X-Ray, Anda harus memastikan bahwa AWS API ini dapat dirutekan dari VPC Anda. Anda memiliki beberapa pilihan:
-
AWS PrivateLink (disarankan): Gunakan AWS PrivateLinkuntuk membuat titik akhir VPC untuk CloudWatch Log dan layanan. X-Ray Ini memungkinkan instans Anda untuk mengakses layanan ini secara pribadi tanpa memerlukan gateway internet atau gateway NAT. Untuk informasi selengkapnya, lihat Menggunakan CloudWatch Log dengan titik akhir VPC antarmuka.
-
NAT Gateway: Konfigurasikan gateway NAT untuk memungkinkan akses internet keluar dari subnet pribadi Anda.
-
Internet Gateway: Untuk subnet publik, pastikan VPC Anda memiliki gateway internet yang dikonfigurasi.
Jika CloudWatch Log atau X-Ray API tidak dapat dirutekan dari VPC Anda, log dan jejak Fungsi Acara Anda tidak dikirimkan.
Pemanggilan bersamaan dan atribusi log
Lingkungan eksekusi Instans Terkelola Lambda dapat memproses beberapa pemanggilan secara bersamaan. Ketika beberapa pemanggilan berjalan secara bersamaan, entri lognya disisipkan dalam aliran log yang sama. Untuk memfilter dan menganalisis log secara efektif dari pemanggilan bersamaan, Anda harus memastikan setiap entri log menyertakan ID permintaan. AWS
Kami merekomendasikan salah satu pendekatan berikut:
-
Gunakan pencatat runtime Lambda default (disarankan): Pustaka logging default yang disediakan oleh runtime terkelola Lambda secara otomatis menyertakan ID permintaan di setiap entri log.
-
Menerapkan logging JSON terstruktur: Jika Anda membuat runtime khusus atau memerlukan pencatatan khusus, terapkan JSON-formatted log yang menyertakan ID permintaan di setiap entri. Instans Terkelola Lambda hanya mendukung format log JSON. Sertakan
requestIdbidang di log JSON Anda untuk mengaktifkan pemfilteran berdasarkan pemanggilan:{ "timestamp": "2025-01-15T10:30:00.000Z", "level": "INFO", "requestId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "message": "Processing request" }
Dengan atribusi ID permintaan, Anda dapat memfilter entri CloudWatch log Log untuk pemanggilan tertentu menggunakan CloudWatch kueri Wawasan Log. Contoh:
fields @timestamp, @message | filter requestId = "a1b2c3d4-e5f6-7890-abcd-ef1234567890" | sort @timestamp asc
Untuk informasi selengkapnya tentang persyaratan pencatatan Instans Terkelola Lambda, lihat. Memahami lingkungan eksekusi Instans Terkelola Lambda