Tulisan ini menerangkan kandungan yang disenaraikan di bawah:
- Bila hendak Log masuk node.js?
- Di manakah Pembalakan Dilaksanakan?
- Bagaimana untuk Melaksanakan Pengelogan dalam Node.js?
- Laksanakan Log masuk node.js Menggunakan Kaedah 'console.log()'.
- Laksanakan Log masuk node.js Menggunakan Kaedah 'console.warn()'.
- Laksanakan Log masuk node.js Menggunakan Kaedah 'console.error()'.
- Laksanakan Log masuk node.js Menggunakan Kaedah 'console.table()'.
- Laksanakan Log masuk node.js Menggunakan 'Modul Nyahpepijat'.
- Laksanakan Log masuk node.js Menggunakan 'Pakej Winston'.
Bila hendak Log masuk node.js?
Berikut ialah tahap pengelogan biasa dalam node.js:
- maklumat: Tugas atau output yang mengesahkan pelaksanaan kod diperkemas.
- amaran: Peristiwa yang perlu dipertimbangkan untuk mengelakkan kegagalan.
- Ralat: Peristiwa yang mengakibatkan kegagalan pelaksanaan kod.
- Nyahpepijat: Tahap ini kebanyakannya digunakan oleh pembangun.
Di manakah Pembalakan Dilaksanakan?
Acara log boleh beratur dan berbilang pendengar boleh mendengar baris gilir dan menulis apa sahaja log yang diperlukan. Sebelum memuktamadkan tempat untuk log, perlu diketahui bahawa metodologi sasaran boleh mengatasi berbilang mesej log. Berikut ialah beberapa lokasi log biasa:
- stdout
- stderr
- konsol
Oleh itu, asas ' console.log() ” dan “ console.info() ' kaedah log ke ' stdout ”. Walau bagaimanapun ' console.warn() ” dan “ console.error() ' kaedah log ke ' stderr ”. Kaedah ini memaparkan output pada konsol. Di bahagian hadapan, ini akan menjadi konsol alat pengaturcara.
Bagaimana untuk Melaksanakan Pengelogan dalam Node.js?
Menganalisis keperluan pembalakan dalam pelbagai situasi adalah penting untuk melaksanakan pendekatan pembalakan yang sepadan. Log masuk node.js boleh dilaksanakan melalui pendekatan yang dinyatakan di bawah:
- “ console.log() ” Kaedah.
- “ console.warn() ” Kaedah.
- “ console.error() ” Kaedah.
- “ console.table() ” Kaedah.
- Modul Nyahpepijat.
- Pakej Winston.
Pendekatan 1: Laksanakan Log masuk node.js Menggunakan Kaedah 'console.log()'.
' console.log() ” kaedah memaparkan output pada konsol dan membantu untuk menguji fungsi kod dari semasa ke semasa.
Sintaks
konsol. log ( keadaan huru-hara )
Dalam sintaks ini, ' keadaan huru-hara ” merujuk kepada mesej yang akan ditulis ke konsol.
Sekarang, teruskan ke blok kod yang diberikan di bawah yang mencatatkan mesej yang disediakan pada konsol:
konsol. log ( 'Ini Linuxhint!' ) ;konsol. log ( 'Ini Node js!' ) ;
Pengeluaran
Daripada hasil ini, ia boleh tersirat bahawa mesej yang dinyatakan dipaparkan pada konsol dengan sewajarnya.
Pendekatan 2: Laksanakan Log masuk node.js Menggunakan Kaedah 'console.warn()'.
' console.warn() ” kaedah memaparkan mesej amaran kepada konsol.
Sintaks
konsol. memberi amaran ( keadaan huru-hara )Dalam sintaks yang diberikan, ' keadaan huru-hara ” menunjukkan mesej (tersuai juga) untuk dipaparkan pada konsol.
Sekarang, pergi ke baris kod berikut yang memaparkan mesej amaran tersuai dengan bantuan ' console.warn() ' kaedah:
konsol. memberi amaran ( 'Ini adalah amaran!' ) ;Pengeluaran
Seperti yang dilihat, amaran tersuai yang ditentukan dipaparkan dengan sewajarnya.
Pendekatan 3: Laksanakan Log masuk node.js Menggunakan Kaedah 'console.error()'.
Kaedah ini menulis mesej ralat ke konsol.
Sintaks
konsol. ralat ( [ data ] [ , ... hujah ] )Dalam sintaks ini:
- “ data ” merujuk kepada mesej utama.
- “ hujah ” mewakili nilai.
Nilai Pulangan
Kaedah ini mendapatkan semula mesej ralat.
Gambaran keseluruhan coretan kod berikut yang merekodkan mesej ralat apabila keadaan tidak berpuas hati:
x = 150 ;jika ( x < 100 ) {
konsol. log ( 'Baik untuk pergi' ) ;
}
lain {
konsol. ralat ( 'Nombor Tidak Sesuai' ) ;
}
Mengikut kod ini:
- Mulakan integer untuk dianalisis untuk keadaan.
- Selepas itu, gunakan ' jika ” pernyataan sedemikian bahawa jika integer yang dimulakan adalah kurang daripada “100”, mesej yang ditentukan dipaparkan.
- Jika tidak, ' lain pernyataan ' melaksanakan mesej ralat dalam ' console.error() ” kaedah.
Pengeluaran
Output ini mengesahkan bahawa apabila keadaan tidak berpuas hati, mesej ralat tersuai dipaparkan pada konsol dengan sewajarnya.
Pendekatan 4: Laksanakan Log masuk node.js Menggunakan Kaedah 'console.table()'.
Kaedah ini mencipta dan memaparkan jadual pada konsol.
Sintaks
konsol. meja ( td, tc )Di sini, ' td ' mewakili data jadual, dan ' tc ” merujuk kepada tatasusunan lajur jadual.
Sekarang, pergi melalui pernyataan kod di bawah yang mencipta jadual dengan memberikan indeks berasingan kepada nilai yang diperuntukkan bagi jenis data video dua kali:
konsol. meja ( [ { x : 10 , a : 'Harry' } , { x : lima belas , a : 'Dengan' } ] ) ;Pengeluaran
Pendekatan 5: Laksanakan Log masuk node.js Menggunakan 'Modul Nyahpepijat'
Modul ini boleh digunakan untuk log maklumat tambahan mengenai status perisian tengah web iaitu, Express, Koa, dll apabila bahagian belakang mendapat permintaan Internet. Middleware dimasukkan ke dalam saluran paip permintaan.
Berikut ialah pendekatan untuk menyediakan perisian tengah pengelogan:
Contoh 1: Menyediakan Perisian Tengah Pengelogan Daripada Aplikasi
' app.use() ” fungsi memasang fungsi middleware sasaran pada laluan yang ditentukan.
Sintaks
aplikasi. guna ( pt, cb )Dalam sintaks yang diberikan di atas:
- “ pt ” merujuk kepada laluan yang mana fungsi middleware akan digunakan.
- “ cb ” sepadan dengan fungsi middleware.
Berikut ialah demonstrasi kod yang menyediakan perisian tengah pengelogan melalui aplikasi dan kaedah yang dibincangkan:
const aplikasi = ekspres ( )const logPerisian tengah = memerlukan ( 'my-logging-middleware' )
aplikasi. guna ( logPerisian tengah )
Dalam kod ini, buat aplikasi Express dan masukkan “ my-logging-middleware ” untuk mula bekerja dengan perisian tengah pembalakan. Akhir sekali, gunakan ' app.use() ” untuk melekapkan fungsi middleware sasaran pada laluan yang ditentukan.
Contoh 2: Menyediakan Perisian Tengah Pengelogan Daripada Aplikasi Melalui Penghala
' router.use() ” fungsi memasang perisian tengah untuk laluan yang disampaikan melalui penghala sasaran.
Sintaks
penghala. guna ( untuk, func )Dalam sintaks ini:
- “ pt ” merujuk kepada laluan perisian tengah.
- “ fungsi ” sepadan dengan fungsi yang diluluskan sebagai panggilan balik.
Contoh di bawah menyediakan perisian tengah pengelogan dengan bantuan objek penghala dan ' router.use() fungsi ':
const penghala = ekspres. Penghala ( )const rtLoggingMiddleware = memerlukan ( 'my-route-logging-middleware' )
penghala. guna ( rtLoggingMiddleware )
Dalam kod ini:
- ' express.Router() ” fungsi mencipta objek penghala baharu.
- Selepas itu, masukkan ' my-route-logging-middleware ” dan begitu juga, gunakan “ router.use() ” berfungsi untuk memasang perisian tengah untuk laluan yang disampaikan oleh penghala sasaran.
Pendekatan 6: Laksanakan Log masuk node.js Menggunakan 'Pakej Winston'
Pakej khusus ini terdiri daripada pilihan storan, berbilang peringkat log, pertanyaan dan pemprofil. Berikut ialah demonstrasi kod yang melaksanakan pembalakan melalui pendekatan ini:
const x = ekspres ( )const termasuk = memerlukan ( 'winston' )
const konsolPengangkutan = baru termasuk. mengangkut . Konsol ( )
const memilih = {
mengangkut : [ konsolPengangkutan ]
}
const pembalak = baru termasuk. createLogger ( memilih )
fungsi paparanPermintaan ( req, res, seterusnya ) {
pembalak. info ( req. url )
seterusnya ( )
}
x. guna ( displayRequest )
Ralat paparan fungsi ( err, req, res, seterusnya ) {
pembalak. ralat ( silap )
seterusnya ( )
}
x. guna ( displayError )
Dalam kod ini:
- Pengangkutan berbilang boleh disediakan dengan penapisan dan pemformat tersuai boleh ditetapkan.
- Juga, berbilang kejadian logger dinyatakan dalam fungsi yang berbeza iaitu, ' logger.info() ” dan “ logger.error() ”.
- Pembalak ini memaparkan maklumat dan mesej ralat, masing-masing.
- Dalam kod ini, hanya URL yang diminta dilog.
Parameter yang diberikan di bawah diambil oleh pembalak:
Nama | Lalai | Penerangan |
format | Winston.format.json | Memformat mesej maklumat |
senyap | Salah | Jika benar, semua log digantung. |
exitOnError | betul | Jika palsu, pengecualian yang diatasi tidak menyebabkan process.exit |
peringkat | Winston.config.npm.levels | Tahap merujuk kepada keutamaan log. |
Kesimpulan
Log masuk node.js boleh dilaksanakan melalui “ console.log() kaedah ', ' console.warn() kaedah ', ' console.error() kaedah ', ' console.table() kaedah ', ' Modul Nyahpepijat ”, atau melalui “ Pakej Winston ”. Kaedah konsol memaparkan maklumat dan mesej ralat. Modul Nyahpepijat mencatatkan maklumat tambahan tentang status perisian tengah web dan pakej Winston mengandungi pilihan storan dan pelbagai peringkat log.