Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Log fungsi tepi
Anda dapat menggunakan Amazon CloudWatch Logs untuk mendapatkan log untuk fungsi edge Anda, baik Lambda @Edge maupun CloudFront Functions. Anda dapat mengakses log dengan menggunakan CloudWatch konsol atau CloudWatch Logs API.
penting
Kami menyarankan Anda menggunakan log untuk memahami sifat permintaan untuk konten Anda, bukan sebagai akuntansi lengkap dari semua permintaan. CloudFront memberikan log fungsi tepi dengan upaya terbaik. Entri log untuk permintaan tertentu mungkin dikirim dalam waktu lama setelah permintaan diproses secara aktual dan, dalam kasus yang jarang, entri log mungkin tidak dikirimkan sama sekali. Ketika entri log dihilangkan dari log fungsi edge, jumlah entri dalam log fungsi edge tidak akan cocok dengan penggunaan yang muncul dalam laporan AWS penagihan dan penggunaan.
Log Lambda @Edge
Lambda @Edge secara otomatis mengirim log fungsi ke CloudWatch Log, membuat aliran log di Wilayah AWS tempat fungsi dipanggil. Saat Anda membuat atau memodifikasi fungsi AWS Lambda, Anda dapat menggunakan nama grup CloudWatch log default atau menyesuaikannya.
-
Nama grup log default adalah
/aws/lambda/
di mana<FunctionName>
adalah nama yang Anda tentukan saat Anda membuat fungsi. Saat mengirim log ke CloudWatch, Lambda @Edge akan secara otomatis menambahkan<FunctionName>
us-east-1
awalan ke nama fungsi, sehingga nama grup log adalah./aws/lambda/us-east-1.
Awalan ini sesuai dengan Wilayah AWS tempat fungsi itu dibuat. Awalan ini tetap menjadi bagian dari nama grup log, bahkan di Wilayah lain tempat fungsi dipanggil.<FunctionName>
-
Jika Anda menentukan nama grup log kustom, seperti
/
, Lambda @Edge tidak akan menambahkan awalan Region. Nama grup log tetap sama di semua Wilayah lain di mana fungsi dipanggil.MyLogGroup
catatan
Jika Anda membuat grup log kustom dan menentukan nama yang sama dengan default/aws/lambda/
, Lambda @Edge menambahkan <FunctionName>
us-east-1
awalan ke nama fungsi.
Selain menyesuaikan nama grup log, fungsi Lambda @Edge mendukung format JSON dan log teks biasa, dan pemfilteran tingkat log. Untuk informasi selengkapnya, lihat Mengonfigurasi kontrol logging lanjutan untuk fungsi Lambda di Panduan AWS Lambda Pengembang.
catatan
Log throttle Lambda@Edge berdasarkan volume permintaan dan ukuran log.
Anda harus meninjau file CloudWatch log di Wilayah yang benar untuk melihat file log fungsi Lambda @Edge Anda. Untuk melihat Wilayah tempat fungsi Lambda @Edge Anda berjalan, lihat grafik metrik untuk fungsi di konsol. CloudFront Metrik ditampilkan untuk setiap Wilayah . Pada halaman yang sama, Anda dapat memilih Wilayah dan kemudian melihat file log untuk Wilayah tersebut untuk menyelidiki masalah.
Untuk mempelajari lebih lanjut tentang cara menggunakan CloudWatch Log dengan fungsi Lambda @Edge, lihat topik berikut:
-
Untuk informasi selengkapnya tentang melihat grafik di bagian Pemantauan CloudFront konsol, lihatPantau CloudFront metrik dengan Amazon CloudWatch.
-
Untuk informasi tentang izin yang diperlukan untuk mengirim data ke CloudWatch Log, lihatSiapkan izin dan peran IAM untuk Lambda @Edge.
-
Untuk informasi tentang menambahkan logging ke fungsi Lambda @Edge, lihat AWS Lambda fungsi logging di Node.js atau AWS Lambda fungsi logging di Python di Panduan Pengembang.AWS Lambda
-
Untuk informasi tentang kuota CloudWatch Log (sebelumnya dikenal sebagai batas), lihat Kuota CloudWatch log di Panduan Pengguna Amazon CloudWatch Logs.
CloudFront Fungsi log
Jika kode CloudFront fungsi berisi console.log()
pernyataan, CloudFront Fungsi secara otomatis mengirimkan baris log ini ke CloudWatch Log. Jika tidak ada console.log()
pernyataan, tidak ada yang dikirim ke CloudWatch Log.
CloudFront Fungsi selalu membuat aliran log di Wilayah AS Timur (Virginia N.) (us-east-1
), tidak peduli lokasi tepi mana yang menjalankan fungsi tersebut. Nama grup log ada dalam format/aws/cloudfront/function/
, di <FunctionName>
mana nama yang Anda berikan ke fungsi saat Anda membuatnya. Nama aliran log dalam format <FunctionName>
YYYY/M/D/
.UUID
Berikut ini menunjukkan contoh pesan log yang dikirim ke CloudWatch Log. Setiap baris dimulai dengan ID yang secara unik mengidentifikasi permintaan. CloudFront Pesan dimulai dengan START
baris yang menyertakan ID CloudFront distribusi, dan diakhiri dengan END
garis. Baris log yang dihasilkan pernyataan console.log()
dalam fungsi berada di antara baris START
dan END
.
U7b4hR_RaxMADupvKAvr8_m9gsGXvioUggLV5Oyq-vmAtH8HADpjhw== START DistributionID: E3E5D42GADAXZZ
U7b4hR_RaxMADupvKAvr8_m9gsGXvioUggLV5Oyq-vmAtH8HADpjhw== Example function log output
U7b4hR_RaxMADupvKAvr8_m9gsGXvioUggLV5Oyq-vmAtH8HADpjhw== END
catatan
CloudFront Fungsi mengirimkan log ke CloudWatch hanya untuk fungsi di LIVE
tahap yang berjalan sebagai respons terhadap permintaan dan tanggapan produksi. Saat Anda menguji suatu fungsi, CloudFront tidak mengirim log apa pun ke CloudWatch. Output pengujian berisi informasi tentang kesalahan, pemanfaatan komputasi, dan log fungsi (console.log()
pernyataan), tetapi informasi ini tidak dikirim ke. CloudWatch
CloudFront Fungsi menggunakan peran terkait layanan AWS Identity and Access Management (IAM) untuk mengirim log ke CloudWatch Log di akun Anda. Peran terkait layanan adalah peran IAM yang ditautkan langsung ke file. Layanan AWS Peran terkait layanan telah ditentukan sebelumnya oleh layanan dan mencakup semua izin yang diperlukan layanan untuk memanggil orang lain untuk Anda. Layanan AWS CloudFront Fungsi menggunakan peran AWSServiceRoleForCloudFrontLoggerterkait layanan. Untuk informasi selengkapnya tentang peran ini, lihat Peran terkait layanan untuk Lambda @Edge( Lambda@Edge menggunakan peran terkait layanan yang sama).
Ketika fungsi gagal dengan kesalahan validasi atau kesalahan eksekusi, informasi tersebut dicatat dalam log standar dan log waktu nyata. Untuk informasi spesifik tentang kesalahan, lihat x-edge-detailed-result-type
bidang x-edge-result-type
x-edge-response-result-type
,, dan.