Log fungsi tepi - Amazon CloudFront

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 dijalankan. Nama grup log diformat sebagai/aws/lambda/us-east-1.function-name, di mana function-name adalah nama yang Anda berikan ke fungsi saat Anda membuatnya, dan us-east-1 merupakan kode Wilayah untuk Wilayah AWS tempat fungsi itu dibuat. Nama grup log selalu berisius-east-1, bahkan untuk grup log untuk Wilayah lain yang menjalankan fungsi Anda.

catatan

Log throttle Lambda@Edge berdasarkan volume permintaan dan ukuran log.

Anda harus meninjau file CloudWatch log di bagian yang benar Wilayah AWS 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 masing-masing Wilayah AWS. 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 berikut ini:

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/FunctionName, di FunctionName mana nama yang Anda berikan ke fungsi saat Anda membuatnya. Nama aliran log dalam format 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 jenis IAM role unik yang terhubung langsung ke layanan AWS . Peran terkait layanan telah ditentukan sebelumnya oleh layanan dan mencakup semua izin yang diperlukan layanan untuk memanggil AWS layanan lain atas nama Anda. CloudFront Fungsi menggunakan peran terkait layanan yang disebut. AWSServiceRoleForCloudFrontLogger 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 dicatat dalam CloudFront log standar dan log real-time. Informasi tentang kesalahan dicatat dalam bidang x-edge-result-type, x-edge-response-result-type, dan x-edge-detailed-result-type.