Heim > Web-Frontend > js-Tutorial > Node.js-Protokollierung: Lokal, Test und Produktion

Node.js-Protokollierung: Lokal, Test und Produktion

Patricia Arquette
Freigeben: 2024-12-05 13:05:11
Original
908 Leute haben es durchsucht

Node.js Logging: Local, Testing, and Production

Hallo, Entwickler! Wir haben ein großartiges Tool zum Anmelden in Node.js und es ist Open Source. Es funktioniert hervorragend, egal ob Sie lokal programmieren, Tests auf mehreren Servern ausführen oder den realen Datenverkehr in der Produktion verarbeiten. Sehen wir uns an, wie Sie Errsole für lokale Entwicklung, Tests (auch mit mehreren Servern) und Produktion verwenden. Halten wir es einfach und praktisch!

Fehler

Errsole ist Ihre Komplettlösung für die Protokollverwaltung. Damit können Sie:

  • Alle Protokolle automatisch sammeln.
  • Protokolle in einem Web-Dashboard anzeigen und durchsuchen.
  • Speichern Sie Protokolle lokal oder in zentralen Datenbanken wie MongoDB, MySQL oder PostgreSQL.

Schritt 1: Lokale Entwicklung

Für die lokale Codierung ist SQLite eine einfache und leichte Wahl. Sie können Protokolle als Dateien auf Ihrem Computer speichern, was die Einrichtung schnell und einfach macht.

npm install errsole errsole-sqlite
Nach dem Login kopieren
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'));
Nach dem Login kopieren

Protokolle anzeigen
Öffnen Sie Ihren Browser und gehen Sie zu http://localhost:8001/, um Ihre Protokolle anzuzeigen.


Schritt 2: Testen mit mehreren Servern

Wenn Sie mehr als einen Testserver haben, reicht SQLite möglicherweise nicht aus. Verwenden Sie MongoDB/MySQL/Postgres, um Ihre Protokolle von allen Servern zu zentralisieren. So bleibt alles an einem Ort organisiert und zugänglich.

npm install errsole errsole-mongodb
Nach dem Login kopieren

MongoDB zum Testen konfigurieren
Richten Sie Errsole ein, um sich bei einer zentralen MongoDB-Instanz anzumelden.

const ErrsoleMongoDB = require('errsole-mongodb');

errsole.initialize({
  storage: new ErrsoleMongoDB('mongodb://test-db-host:27017/', 'test_logs')
});
Nach dem Login kopieren
Nach dem Login kopieren
const ErrsoleMongoDB = require('errsole-mongodb');

errsole.initialize({
  storage: new ErrsoleMongoDB('mongodb://test-db-host:27017/', 'test_logs')
});
Nach dem Login kopieren
Nach dem Login kopieren

Debuggen von Protokollen beim Testen
Verwenden Sie detaillierte Protokolle zur Fehlerbehebung:

errsole.debug('Test case started', { testName: 'LoginTest', server: 'server1' });
Nach dem Login kopieren

Protokolle anzeigen
Greifen Sie auf das Web-Dashboard für alle Testserver unter http://your-test-db-host:8001/ zu.

Verwenden Sie Filter im Dashboard, um Protokolle von bestimmten Servern oder Testfällen zu finden.


Schritt 3: Produktionseinrichtung

In der Produktion benötigen Sie ein zuverlässiges Setup, das hohen Datenverkehr bewältigen kann und bei kritischen Problemen sofortige Benachrichtigungen liefert. MongoDB ist eine großartige Wahl für die zentralisierte Protokollierung in der Produktion.

MongoDB für die Produktion konfigurieren

errsole.initialize({
  storage: new ErrsoleMongoDB('mongodb://prod-db-host:27017/', 'prod_logs')
});
Nach dem Login kopieren

Beispiel mit Warnungen
Lassen Sie sich über kritische Fehler in der Produktion benachrichtigen:

errsole.alert('Critical issue in production', { server: 'main-server' });
Nach dem Login kopieren

Metadaten für Kontext
Fügen Sie Ihren Protokollen zusätzliche Details hinzu:

errsole.meta({ userId: 123, action: 'purchase' }).log('Purchase completed');
Nach dem Login kopieren

Einheitliches Setup für alle Umgebungen

So verwalten Sie die Protokollierung in lokalen, Test- und Produktionsumgebungen in einem Setup:

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.`);

Nach dem Login kopieren

Umgebungsvariablen

  • Lokal: Legen Sie NODE_ENV=development fest.
  • Testen: Verwenden Sie NODE_ENV=testing.
  • Produktion: NODE_ENV=Produktion festlegen.

Warum Errsole wählen?

Skalierbare Protokollierung: Funktioniert nahtlos mit lokalen, Test- und Produktions-Setups.

Zentralisierte Protokolle: Verwenden Sie MongoDB/MySQL/Postgres, um Protokolle von mehreren Servern zu verwalten.

Web-Dashboard: Protokolle einfach anzeigen, durchsuchen und filtern.

Benutzerdefinierte Benachrichtigungen: Erhalten Sie Echtzeitbenachrichtigungen für kritische Probleme.

Errsole ist das ultimative Tool zum Verwalten von Protokollen in jeder Umgebung. Beginnen Sie mit SQLite für die lokale Entwicklung, skalieren Sie auf SQL/NoSQL für Tests auf mehreren Servern und bleiben Sie mit zentraler Protokollierung und Warnungen produktionsbereit. Es ist einfach, flexibel und leistungsstark.

Sind Sie bereit, Ihre Protokollierung zu verbessern? Errsole steht Ihnen zur Seite. ?

GitHub-URL: https://github.com/errsole/errsole.js

Das obige ist der detaillierte Inhalt vonNode.js-Protokollierung: Lokal, Test und Produktion. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:dev.to
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage