Mencipta Logger Tersuai untuk Aplikasi Node.js menggunakan Errsole

WBOY
Lepaskan: 2024-08-24 11:11:33
asal
573 orang telah melayarinya

Setiap sistem pembalakan yang mantap terdiri daripada tiga komponen utama: Pengumpul, Storan dan Visualizer. Modul pengelogan Node.js yang popular seperti Winston dan Pino berfungsi sebagai pengumpul log semata-mata. Errsole, bagaimanapun, menawarkan penyelesaian pengelogan lengkap yang merangkumi:

  1. Storan Log: Simpan log dalam fail atau pangkalan data aplikasi anda.

  2. Papan Pemuka Terbina dalam: Lihat, tapis dan cari log menggunakan papan pemuka terbina dalam.

  3. Makluman: Terima pemberitahuan masa nyata untuk ralat kritikal.

Memasang Errsole dan kebergantungannya

Untuk menggunakan Errsole, anda perlu memasang modul Errsole bersama modul storan berdasarkan pangkalan data pilihan anda. Berikut ialah langkah pemasangan untuk pilihan storan yang berbeza:

Penyimpanan Fail:

npm install errsole errsole-sqlite
Salin selepas log masuk

MongoDB:

npm install errsole errsole-mongodb
Salin selepas log masuk

MySQL:

npm install errsole errsole-mysql
Salin selepas log masuk

PostgreSQL:

npm install errsole errsole-postgres
Salin selepas log masuk

Mencipta Fail Logger Tersuai

Dalam projek Node.js kehidupan sebenar, anda akan mempunyai berbilang fail. Untuk menggunakan Errsole Logger dalam setiap fail projek anda, buat fail logger.js dan mulakan Errsole di dalamnya:

const errsole = require('errsole');
const ErrsoleSQLite = require('errsole-sqlite');

errsole.initialize({
  storage: new ErrsoleSQLite('/tmp/logs.sqlite')
});

module.exports = errsole;
Salin selepas log masuk

Kini, anda boleh mengimport fail logger.js dalam setiap fail dalam projek anda dan menggunakannya untuk log:

const logger = require('./logger');

// Example usage
logger.info('This is an informational message.');
logger.error('This is an error message.');
Salin selepas log masuk

Memahami Tahap Log dalam Errsole

Fungsi Errsole Logger mengambil hujah yang sama seperti console.log. Anda boleh menyediakan satu atau lebih rentetan, objek atau pembolehubah yang dipisahkan dengan koma. Selain itu, anda boleh melampirkan metadata pada mesej log anda menggunakan fungsi meta. Metadata ini boleh berupa sebarang maklumat kontekstual, seperti permintaan HTTP atau hasil pertanyaan pangkalan data.

logger.meta({ reqBody: req.body, queryResults: results }).error(err);
logger.meta({ email: req.body.email }).log('User logged in');
Salin selepas log masuk

Errsole Logger menyediakan fungsi untuk lima peringkat log: makluman, ralat, amaran, maklumat dan nyahpepijat.

log / maklumat: Gunakan untuk log mesej atau maklumat.

logger.log('Logging a message');
logger.log('Multiple', 'arguments', 'are supported');
logger.log('Logging with a variable:', var1);
logger.log(new Error('An error occurred'));
logger.log('Logging with an error object:', errorObject);
Salin selepas log masuk

makluman: Log mesej dan menghantar pemberitahuan kepada saluran yang dikonfigurasikan, seperti E-mel atau Slack.

logger.alert('Alert! Something critical happened');
Salin selepas log masuk

ralat: Direka khusus untuk mengelog ralat.

logger.error(new Error('An error occurred'));
Salin selepas log masuk

amaran: Log mesej amaran.

logger.warn('This is a warning message');
Salin selepas log masuk

nyahpepijat: Log maklumat nyahpepijat, biasanya digunakan untuk menyelesaikan masalah semasa pembangunan.

logger.debug('Debugging information');
Salin selepas log masuk

Bila hendak menggunakan logger.alert dalam kod anda

Setiap kali aplikasi Node.js anda ranap, Errsole menghantar pemberitahuan masa nyata kepada pasukan pembangunan anda. Pemberitahuan ini termasuk mesej ralat, nama apl, nama persekitaran dan nama pelayan.

Creating a Custom Logger for a Node.js Application using Errsole

Untuk menambah ralat kritikal pada senarai pemberitahuan ini, gunakan logger.alert dalam kod anda. Walau bagaimanapun, elakkan menggunakannya secara berlebihan untuk mengelakkan membanjiri pembangun anda dengan pemberitahuan. Gunakannya untuk ralat kritikal seperti kegagalan pembayaran atau kegagalan pertanyaan pangkalan data. Letakkan objek ralat dalam fungsi amaran dan tambah semua maklumat kontekstual dalam fungsi meta. Ini membolehkan pembangun menyahpepijat ralat kritikal dengan mudah.

logger.meta({ reqBody: req.body, queryResults: results }).alert(err);
Salin selepas log masuk

Kesimpulan

Menggabungkan penyelesaian pengelogan lengkap ke dalam aplikasi Node.js anda memastikan pengurusan log yang mantap dan penyahpepijatan yang cekap. Errsole menyediakan storan log, papan pemuka terbina dalam dan pemberitahuan masa nyata, menjadikannya alat pengelogan yang lengkap.

Untuk bermula dengan Errsole, lawati https://github.com/errsole/errsole.js.

Atas ialah kandungan terperinci Mencipta Logger Tersuai untuk Aplikasi Node.js menggunakan Errsole. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:dev.to
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!