全部产品
Search
文档中心

Function Compute:Log

更新时间:Nov 11, 2025

Anda dapat mencetak dan melihat log di waktu proses Node.js. Log yang dicetak membantu menemukan masalah dengan cepat atau menganalisis informasi eksekusi fungsi, seperti proses dan durasi eksekusi. Hal ini meningkatkan keandalan dan stabilitas sistem.

Cetak log

Log yang dicetak oleh suatu fungsi ke output standar (stdout) disimpan dalam Logstore yang ditentukan di Simple Log Service. Anda dapat menggunakan salah satu metode berikut untuk mencetak log ke stdout. Contoh kode berikut mengilustrasikan cara kerjanya:

Modul ECMAScript

Catatan
  • Contoh ini hanya mendukung Node.js 18 atau yang lebih baru.

  • Kode contoh mendukung penyebaran satu klik. Anda dapat menyebarkan kode contoh di Function Compute dengan satu klik. nodejs-fc-log-es

export const handler = async (event, context) => {
  process.stdout.write('hi,fc\n');
  console.log('hello,world');
  context.logger.info('hello,fc');
  return "Hello World!";
};

Modul CommonJS

'use strict';

exports.handler = (event, context, callback) => {
  process.stdout.write('hi,fc\n');
  console.log('hello,world');
  context.logger.info('hello,fc');
  callback(null, 'hello,world');
};

Use process.stdout.write to print logs

Jika Anda menggunakan metode ini untuk mencetak log, isi log akan dicetak apa adanya. Contoh log:

hi,fc

Use console.log to print logs

Jika Anda menggunakan metode ini untuk mencetak log, setiap log mencakup informasi seperti waktu, ID permintaan, dan tingkat log. Contoh log:

2024-03-04 07:01:16.927 1-65e571bc-158a59e8-b63f98cd471c [info] hello,world

Use context.logger to print logs

Jika Anda mengonfigurasi konkurensi instance fungsi ke nilai lebih besar dari 1, satu instance fungsi secara bersamaan memproses beberapa permintaan. Dalam hal ini, kami sarankan menggunakan context.logger untuk mencetak log guna membedakan log dari setiap permintaan berdasarkan ID permintaan. Contoh log:

2024-03-04 07:01:16.927 1-65e571bc-158a59e8-b63f98cd471c [[object Object]] hello,fc

Tingkat keparahan log kustom

Penting

Tingkat keparahan log kustom hanya didukung di waktu proses Node.js 18 dan Node.js 20.

Anda dapat menyesuaikan tingkat keparahan log menggunakan variabel lingkungan ALIYUN_FC_LOG_LEVEL. Tingkat log kustom, dari yang paling rendah hingga paling tinggi, adalah: debug, info, warn, dan error, dengan debug sebagai tingkat terendah dan error sebagai tingkat tertinggi.

Hanya log dengan tingkat keparahan lebih tinggi atau sama dengan ALIYUN_FC_LOG_LEVEL yang akan dicetak.

Sebagai contoh, jika Anda mengatur variabel lingkungan menjadi ALIYUN_FC_LOG_LEVEL=warn, hanya log dengan tingkat warn atau lebih tinggi (yaitu log warn dan error) yang dicetak. Tingkat default untuk log yang dicetak menggunakan console.log adalah info. Karena tingkat info lebih rendah daripada tingkat warn yang dikonfigurasi, log info tidak akan dicetak. Log yang dicetak menggunakan process.stdout.write() tidak dipengaruhi oleh variabel lingkungan ini dan selalu dicetak.

Prosedur

  1. Buat direktori kode untuk pengujian, misalnya code.

  2. Di direktori code, buat file bernama index.js. Simpan kode contoh berikut ke dalam file index.js.

    'use strict';
    
    exports.handler = (event, context, callback) => {
      process.stdout.write('stdout log\n');
      console.log('console log');
      context.logger.debug('context log info');
      context.logger.info('context log info');
      context.logger.warn('context log warn');
      context.logger.error('context log error');
      callback(null, 'hello,world');
    }
  3. Pada halaman Buat Fungsi di konsol Function Compute, atur tipe fungsi menjadi Event Function, atur Runtime ke Node.js 18 atau Node.js 20, dan atur metode unggah kode menjadi Upload Folder. Untuk informasi selengkapnya, lihat Buat fungsi event.

  4. Pada halaman detail fungsi, klik tab Configuration. Di bagian Advanced Configuration, klik Edit, lalu ubah Environment Variables. Tambahkan variabel ALIYUN_FC_LOG_LEVEL=warn dan klik Deploy.

  5. Klik Test Function. Output log adalah sebagai berikut:

stdout log
2024-06-19 08:48:51.672 1--xxx-xxx-xxx [warn] context log warn
2024-06-19 08:48:51.672 1--xxx-xxx-xxx [error] context log error

Lihat log

Setelah fungsi dieksekusi, Anda dapat melihat log pada tab Logs. Untuk informasi selengkapnya, lihat Lihat log pemanggilan fungsi.