Hai, pembangun! Kami mempunyai alat yang hebat untuk log masuk Node.js dan ia adalah sumber terbuka. Ia berfungsi dengan baik sama ada anda mengekod secara tempatan, menjalankan ujian pada berbilang pelayan atau mengendalikan trafik dunia sebenar dalam pengeluaran. Mari lihat cara menggunakan Errsole untuk pembangunan tempatan, ujian (walaupun dengan berbilang pelayan) dan pengeluaran. Mari kita pastikan ia ringkas dan praktikal!
Errsole ialah penyelesaian sehenti anda untuk mengurus log. Ia membolehkan anda:
Untuk pengekodan tempatan, SQLite ialah pilihan yang mudah dan ringan. Anda boleh menyimpan log sebagai fail pada komputer anda, menjadikan persediaan cepat dan mudah.
npm install errsole errsole-sqlite
const express = require('express'); const errsole = require('errsole'); const ErrsoleSQLite = require('errsole-sqlite'); // Initialize Errsole with SQLite errsole.initialize({ storage: new ErrsoleSQLite('/tmp/local_logs.sqlite') // Change path if needed }); const app = express(); app.get('/', (req, res) => res.send('Hello from Local!')); app.listen(3000, () => console.log('App running on http://localhost:3000'));
Lihat Log
Buka penyemak imbas anda dan pergi ke http://localhost:8001/ untuk melihat log anda.
Jika anda mempunyai lebih daripada satu pelayan ujian, SQLite mungkin tidak mencukupi. Gunakan MongoDB/MySQL/Postgres untuk memusatkan log anda daripada semua pelayan. Ini memastikan semuanya teratur dan boleh diakses di satu tempat.
npm install errsole errsole-mongodb
Konfigurasikan MongoDB untuk Ujian
Sediakan Errsole untuk log ke contoh MongoDB pusat.
const ErrsoleMongoDB = require('errsole-mongodb'); errsole.initialize({ storage: new ErrsoleMongoDB('mongodb://test-db-host:27017/', 'test_logs') });
const ErrsoleMongoDB = require('errsole-mongodb'); errsole.initialize({ storage: new ErrsoleMongoDB('mongodb://test-db-host:27017/', 'test_logs') });
Menyahpepijat Log dalam Ujian
Gunakan log terperinci untuk menyelesaikan masalah:
errsole.debug('Test case started', { testName: 'LoginTest', server: 'server1' });
Lihat Log
Akses papan pemuka web untuk semua pelayan ujian di http://your-test-db-host:8001/.
Gunakan penapis dalam papan pemuka untuk mencari log daripada pelayan tertentu atau kes ujian.
Dalam pengeluaran, anda mahukan persediaan yang boleh dipercayai yang boleh mengendalikan trafik tinggi dan memberikan makluman segera untuk isu kritikal. MongoDB ialah pilihan yang bagus untuk pengelogan berpusat dalam pengeluaran.
Konfigurasikan MongoDB untuk Pengeluaran
errsole.initialize({ storage: new ErrsoleMongoDB('mongodb://prod-db-host:27017/', 'prod_logs') });
Contoh dengan Makluman
Dapatkan pemberitahuan tentang ralat kritikal dalam pengeluaran:
errsole.alert('Critical issue in production', { server: 'main-server' });
Metadata untuk Konteks
Sertakan butiran tambahan dalam log anda:
errsole.meta({ userId: 123, action: 'purchase' }).log('Purchase completed');
Berikut ialah cara mengendalikan pengelogan merentas persekitaran tempatan, ujian dan pengeluaran dalam satu persediaan:
const errsole = require('errsole'); const ErrsoleSQLite = require('errsole-sqlite'); const ErrsoleMongoDB = require('errsole-mongodb'); let storage; // Configure storage based on the environment if (process.env.NODE_ENV === 'production') { storage = new ErrsoleMongoDB('mongodb://prod-db-host:27017/', 'prod_logs'); } else if (process.env.NODE_ENV === 'testing') { storage = new ErrsoleMongoDB('mongodb://test-db-host:27017/', 'test_logs'); } else { storage = new ErrsoleSQLite('/tmp/local_logs.sqlite'); } errsole.initialize({ storage }); console.log(`Errsole is running in ${process.env.NODE_ENV || 'development'} mode.`);
Pembolehubah Persekitaran
Log Berskala: Berfungsi dengan lancar dengan persediaan tempatan, ujian dan pengeluaran.
Log Berpusat: Gunakan MongoDB/MySQL/Postgres untuk mengurus log daripada berbilang pelayan.
Papan Pemuka Web: Lihat, cari dan tapis log dengan mudah.
Makluman Tersuai: Dapatkan pemberitahuan masa nyata untuk isu kritikal.
Errsole ialah alat muktamad untuk mengurus log dalam setiap persekitaran. Mulakan dengan SQLite untuk pembangunan tempatan, skala kepada SQL/NoSQL untuk ujian merentas berbilang pelayan, dan kekalkan persediaan pengeluaran dengan pengelogan dan makluman terpusat. Ia ringkas, fleksibel dan berkuasa.
Bersedia untuk menaikkan tahap pembalakan anda? Errsole berada di belakang anda. ?
Url GitHub: https://github.com/errsole/errsole.js
Atas ialah kandungan terperinci Pengelogan Node.js: Setempat, Pengujian dan Pengeluaran. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!