Function Compute terintegrasi dengan Simple Log Service. Setelah Anda mengonfigurasi logging untuk suatu fungsi, Function Compute secara otomatis mengumpulkan log dan mengirimkannya ke Logstore dalam project yang ditentukan. Anda dapat melihat log per-request, log instans, dan log fungsi di Konsol Function Compute. Anda juga dapat menggunakan kemampuan analisis log di Konsol Simple Log Service untuk menjalankan kueri log kustom.
Informasi latar belakang
Simple Log Service adalah layanan end-to-end untuk data log. Layanan ini menyediakan kemampuan full-stack untuk pengumpulan, penyimpanan, kueri, analisis, visualisasi, dan Peringatan log. Untuk menyimpan log fungsi di Simple Log Service, konfigurasikan project dan Logstore dalam fungsi Anda serta berikan izin kepada fungsi tersebut untuk mengakses Simple Log Service. Setelah dikonfigurasi, log fungsi akan ditulis ke Logstore yang ditentukan.
Catatan penagihan
Metode penagihan
Function Compute tidak membebankan biaya tambahan untuk mengaktifkan fitur logging. Namun, Simple Log Service membebankan biaya untuk log yang dikirimkan kepadanya.
-
Jika Logstore menggunakan metode penagihan pay-by-feature, Simple Log Service membebankan biaya berdasarkan storage space, read traffic, jumlah request, transformasi data, dan Pengiriman data setelah Function Compute mengirimkan log kepadanya. Untuk informasi selengkapnya, lihat Item penagihan untuk metode penagihan pay-by-feature.
-
Jika Logstore menggunakan metode penagihan pay-by-ingested-data, Simple Log Service membebankan biaya berdasarkan data mentah yang diingest setelah Function Compute mengirimkan log kepadanya. Untuk informasi selengkapnya, lihat Item penagihan untuk metode penagihan pay-by-ingested-data.
Untuk mengubah metode penagihan Logstore, lihat Kelola Logstore.
Hentikan penagihan
Untuk menghentikan penagihan, pertama-tama nonaktifkan fitur logging di Konsol Function Compute. Kemudian, buka Konsol Simple Log Service untuk menghapus Logstore atau menghapus project.
Menghapus project atau Logstore Simple Log Service bersifat permanen dan tidak dapat dikembalikan. Setelah dihapus, log tidak dapat lagi dikirimkan ke Simple Log Service, dan data yang ada akan dihapus secara permanen. Cadangkan data log penting sebelum menghapus.
Aktifkan logging untuk fungsi
Konfigurasikan logging menggunakan Konsol Function Compute
Prasyarat
-
Function Compute
-
Opsi: Simple Log Service (SLS)
Prosedur
Login ke Konsol Function Compute. Di panel navigasi kiri, pilih .
Di bilah navigasi atas, pilih Wilayah. Pada halaman Functions, klik fungsi yang dituju.
-
Pada halaman detail fungsi, pilih tab Configuration, klik Advanced Settings di sebelah kanan Advanced Settings, temukan opsi Logs di panel Advanced Settings, lengkapi konfigurasi log dengan langkah-langkah berikut, lalu klik Deploy.
Catatan-
Saat membuat fungsi, fitur logging diaktifkan secara default, dan sistem secara otomatis memilih Log Service Project yang diawali dengan
serverless-<region_id>dan Logstore default. -
Konsol secara otomatis mengaktifkan Log Rotation Rules, Request-level Metrics, dan Instance-level Metrics, serta membuat semua indeks yang diperlukan untuk kueri log.
Item konfigurasi
Wajib
Deskripsi
Logging
Ya
Menentukan apakah akan mengaktifkan Simple Log Service. Nilai yang valid:
-
Enable: Setelah fitur ini diaktifkan, Function Compute mengimpor log ke project log Anda. Anda dapat melakukan kueri dan mengambil log di Konsol Function Compute dan Konsol Simple Log Service untuk troubleshooting dan mengidentifikasi masalah.
-
Disable: Logging dinonaktifkan. Log fungsi tidak dapat dipertahankan, dan Anda tidak dapat melacak atau menemukan masalah.
Configuration Mode
Ya
Pilih Automatic Configuration atau Custom Configuration. Jika Anda memilih Custom Configuration, Anda harus menentukan Log Service Project dan Logstore.
Log Service Project
Ya
Menentukan project tujuan untuk menyimpan log pemanggilan fungsi.
Logstore
Ya
Menentukan Logstore tujuan untuk menyimpan log pemanggilan fungsi.
Log Rotation Rules
Tidak
Menentukan apakah akan mengaktifkan aturan segmentasi log. Nilai yang valid:
-
Enable: Saat diaktifkan, Function Compute akan membagi log sesuai aturan segmentasi log menjadi beberapa segmen log dan menuliskannya secara terpisah ke Simple Log Service.
Aturan default adalah
^.{0,2}\d{4}-\d{2}-\d{2}, yang cocok dengan format tanggalxxxx-xx-xx, di manaxadalah angka. Log dibagi berdasarkan apakah baris dimulai dengan tanggal. Misalnya, jika baris log dimulai dengan "2023-10-10", baris tersebut dianggap sebagai baris pertama dari blok log baru. Baris ini dan baris-baris berikutnya tanpa tanggal di awal ditulis sebagai satu entri log. -
Disable: Segmentasi log dinonaktifkan. Log dibagi menggunakan pembatas default
\n.
Request-level Metrics
Tidak
Menentukan apakah akan mengimpor log metrik request ke Logstore. Kami sangat menyarankan untuk mengaktifkan fitur ini.
Nilai yang valid:
-
Enable: Metrik untuk setiap pemanggilan fungsi—seperti waktu eksekusi, Penggunaan memori, status error, terjadinya cold start, dan durasi langkah cold start—dikirimkan ke Logstore yang Anda pilih saat konfigurasi logging. Log pemanggilan Function Compute menampilkan daftar request berdasarkan metrik ini. Anda juga dapat menyaring request berdasarkan metrik, seperti semua request error atau request dengan cold start.
-
Disable: Anda tidak dapat melihat informasi eksekusi request secara detail.
Instance-level Metrics
Tidak
Menentukan apakah akan mengaktifkan metrik tingkat instans. Nilai yang valid:
-
Enable: Saat diaktifkan, data metrik dari instans fungsi dikirimkan ke Logstore yang Anda pilih saat konfigurasi log. Anda dapat melihat metrik performa pada tingkat instans fungsi, seperti penggunaan CPU, memori, dan I/O jaringan. Function Compute menggunakan data metrik tingkat instans untuk menyediakan observabilitas pada granularitas instans, memberikan jalur pemantauan dan troubleshooting end-to-end untuk instans fungsi. Untuk informasi selengkapnya, lihat Instance-Level Metrics.
-
Nonaktifkan: Anda tidak dapat melihat metrik instans terperinci.
-
Konfigurasikan logging menggunakan Serverless Devs
Prasyarat
Prosedur
-
Buat direktori kode dengan struktur berikut.
. ├── code │ └── index.js └── s.yamlPada contoh ini, bidang logConfig mengonfigurasi logging. Ganti logstore dan project dengan Logstore dan project yang sudah ada di akun Anda. Atau, atur logConfig: auto agar Function Compute secara otomatis menetapkan project dan Logstore.
edition: 3.0.0 name: hello-world-app access: "default" vars: # Variabel global region: "cn-hangzhou" resources: hello_world: component: fc3 # Nama komponen props: region: ${vars.region} functionName: "start-nodejs-****" description: 'hello world by serverless devs' runtime: "nodejs16" code: ./code handler: index.handler memorySize: 128 timeout: 30 logConfig: # Ganti logstore dan project dengan nilai aktual, atau gunakan logConfig: auto untuk membuat project dan Logstore secara otomatis enableInstanceMetrics: true # Aktifkan metrik tingkat instans enableRequestMetrics: true # Aktifkan metrik tingkat request logBeginRule: DefaultRegex # Aturan segmentasi log logstore: 'your-logstore' # Tentukan nama Logstore (harus ada) project: 'your-project' # Tentukan nama project (harus ada) -
Jalankan perintah berikut untuk menerapkan aplikasi.
sudo s deploy -ySetelah penerapan berhasil, login ke Konsol Function Compute untuk memverifikasi bahwa fungsi telah diterapkan dan logging diaktifkan.
Nonaktifkan logging
Setelah Anda menonaktifkan logging, log eksekusi fungsi tidak lagi dikumpulkan atau disimpan. Hal ini dapat memengaruhi troubleshooting dan analisis performa. Lakukan dengan hati-hati.
Login ke Konsol Function Compute. Di panel navigasi kiri, pilih .
Di bilah navigasi atas, pilih Wilayah. Pada halaman Functions, klik fungsi yang dituju.
-
Pada halaman detail fungsi, pilih tab Configuration, klik Modify di sebelah kanan Advanced Settings, di panel Advanced Settings, temukan opsi Logs, atur toggle log feature ke Off, lalu klik Deploy.
Lihat log pemanggilan
Pada halaman detail fungsi, klik tab Logs untuk melakukan kueri catatan pemanggilan untuk fungsi saat ini.
Pada halaman detail fungsi, klik tab Version Management atau Alias Management. Pilih versi atau alias fungsi, lalu klik tab Logs pada halaman detail versi atau alias untuk melihat log-nya.
Anda dapat melihat log pemanggilan fungsi baik di tab Invocation Requests maupun di tab Search by Keyword. Perbedaannya:
-
Invocation Requests
Tab ini mencantumkan waktu akhir pemanggilan fungsi, ID request, hasil pemanggilan, ID instans, serta versi atau alias fungsi.
-
Klik Request ID untuk melihat detail request dan log.
-
Klik Instance ID untuk melihat metrik instans, seperti penggunaan CPU, Penggunaan memori, dan network traffic.
-
Pada kolom Actions, klik Request Logs untuk melihat detail log, atau klik Advanced Logs untuk membuka Konsol Simple Log Service guna melakukan kueri dan analisis log.
-
-
Search by Keyword
Tab ini mencantumkan waktu pemanggilan fungsi, konten log, serta versi atau alias fungsi. Pada kolom Actions, klik Log Context untuk melihat entri log di sekitarnya, atau klik Logstore untuk membuka Konsol Simple Log Service guna melakukan kueri dan analisis log.
Masukkan kata kunci di kotak pencarian untuk menemukan log tertentu. Misalnya, untuk menemukan log yang berisi teks
hello world, masukkanhello worlddi kotak pencarian. Hasilnya mencakup semua baris log yang berisi kata kunci tersebut. Untuk informasi lebih lanjut tentang sintaksis kueri, lihat Sintaksis dan fitur kueri.
Referensi
Anda juga dapat mengonfigurasi logging untuk fungsi dengan memanggil SDK atau API. Untuk informasi selengkapnya, lihat Buat fungsi.