Logger Log
Log NocoBase berbasis pada Winston. Secara default, NocoBase membagi log menjadi log request API, log runtime sistem, dan log eksekusi SQL. Di antaranya, log request API dan log eksekusi SQL dicetak secara internal oleh aplikasi, developer plugin biasanya hanya perlu memperhatikan log runtime sistem yang terkait dengan plugin.
Berikut diperkenalkan cara membuat dan mencetak log saat mengembangkan plugin.
Method Cetak Default
NocoBase menyediakan method cetak log runtime sistem, log dicetak sesuai field yang ditentukan, sekaligus output ke file yang ditentukan.
Method-method di atas semuanya mengikuti penggunaan berikut:
Parameter pertama adalah pesan log, parameter kedua adalah objek metadata opsional, dapat berupa pasangan key-value apa pun. Di antaranya, module, submodule, method akan diekstrak menjadi field terpisah, field lainnya ditempatkan di field meta.
Output ke File Lain
Jika ingin tetap menggunakan method cetak default sistem, tetapi tidak ingin output ke file default, dapat menggunakan createSystemLogger untuk membuat instance log sistem kustom.
Log Kustom
Jika tidak ingin menggunakan method cetak yang disediakan sistem, dan ingin langsung menggunakan cara native Winston, dapat membuat log melalui method berikut.
createLogger
options diperluas berdasarkan winston.LoggerOptions asli.
transports- Dapat menggunakan'console' | 'file' | 'dailyRotateFile'untuk menerapkan cara output yang sudah preset.format- Dapat menggunakan'logfmt' | 'json' | 'delimiter'untuk menerapkan format cetak yang sudah preset.
app.createLogger
Dalam skenario multi-aplikasi, jika Anda ingin output log kustom ke direktori dengan nama aplikasi saat ini, dapat menggunakan method ini.
plugin.createLogger
Skenario penggunaan dan cara penggunaan sama dengan app.createLogger.
Tautan Terkait
- Context Konteks Request — Mencetak log melalui
ctx.loggerdi middleware dan Action - Plugin — Menggunakan log melalui
this.logdanplugin.createLoggerdi plugin - Telemetry Telemetri — Log dikombinasikan dengan telemetri untuk implementasi observability
- Middleware — Skenario tipikal pencatatan log request di middleware
- Ikhtisar Pengembangan Server — Posisi sistem log dalam arsitektur server

