„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Erstellen eines benutzerdefinierten Loggers für eine Node.js-Anwendung mit Errsole

Erstellen eines benutzerdefinierten Loggers für eine Node.js-Anwendung mit Errsole

Veröffentlicht am 26.08.2024
Durchsuche:456

Jedes robuste Protokollierungssystem besteht aus drei Schlüsselkomponenten: einem Collector, einem Storage und einem Visualizer. Beliebte Node.js-Protokollierungsmodule wie Winston und Pino fungieren ausschließlich als Protokollsammler. Errsole bietet jedoch eine vollständige Protokollierungslösung, die Folgendes umfasst:

  1. Protokollspeicher: Speichern Sie Protokolle in einer Datei oder der Datenbank Ihrer Anwendung.

  2. Integriertes Dashboard: Protokolle mit dem integrierten Dashboard anzeigen, filtern und durchsuchen.

  3. Benachrichtigungen: Erhalten Sie Echtzeitbenachrichtigungen für kritische Fehler.

Errsole und seine Abhängigkeiten installieren

Um Errsole verwenden zu können, müssen Sie das Errsole-Modul zusammen mit einem Speichermodul basierend auf der von Ihnen gewählten Datenbank installieren. Hier sind die Installationsschritte für verschiedene Speicheroptionen:

Dateispeicherung:

npm install errsole errsole-sqlite

MongoDB:

npm install errsole errsole-mongodb

MySQL:

npm install errsole errsole-mysql

PostgreSQL:

npm install errsole errsole-postgres

Erstellen einer benutzerdefinierten Logger-Datei

In einem echten Node.js-Projekt verfügen Sie über mehrere Dateien. Um den Errsole Logger in jeder Datei Ihres Projekts zu verwenden, erstellen Sie eine logger.js-Datei und initialisieren Sie Errsole darin:

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

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

module.exports = errsole;

Jetzt können Sie die Datei logger.js in jede Datei in Ihrem Projekt importieren und zum Protokollieren verwenden:

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

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

Grundlegendes zu Protokollebenen in Errsole

Errsole Logger-Funktionen verwenden dieselben Argumente wie console.log. Sie können eine oder mehrere durch Komma getrennte Zeichenfolgen, Objekte oder Variablen angeben. Darüber hinaus können Sie mithilfe der Metafunktion Metadaten an Ihre Protokollnachrichten anhängen. Bei diesen Metadaten kann es sich um beliebige Kontextinformationen handeln, beispielsweise um HTTP-Anfragen oder Ergebnisse von Datenbankabfragen.

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

Errsole Logger bietet Funktionen für fünf Protokollebenen: Warnung, Fehler, Warnung, Info und Debug.

log / info: Zum Protokollieren von Nachrichten oder Informationen.

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

alert: Protokolliert eine Nachricht und sendet eine Benachrichtigung an konfigurierte Kanäle wie E-Mail oder Slack.

logger.alert('Alert! Something critical happened');

Fehler: Speziell zum Protokollieren von Fehlern entwickelt.

logger.error(new Error('An error occurred'));

warn: Protokolliert Warnmeldungen.

logger.warn('This is a warning message');

debug: Protokolliert Debug-Informationen, die normalerweise zur Fehlerbehebung während der Entwicklung verwendet werden.

logger.debug('Debugging information');

Wann Sie logger.alert in Ihrem Code verwenden sollten

Immer wenn Ihre Node.js-Anwendung abstürzt, sendet Errsole eine Echtzeitbenachrichtigung an Ihr Entwicklungsteam. Diese Benachrichtigung enthält die Fehlermeldung, den App-Namen, den Umgebungsnamen und den Servernamen.

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

Um kritische Fehler zu dieser Benachrichtigungsliste hinzuzufügen, verwenden Sie logger.alert in Ihrem Code. Vermeiden Sie jedoch eine Überbeanspruchung, um zu verhindern, dass Ihre Entwickler mit Benachrichtigungen überschwemmt werden. Verwenden Sie es bei kritischen Fehlern wie Zahlungsfehlern oder Fehlern bei Datenbankabfragen. Fügen Sie das Fehlerobjekt in die Alarmfunktion ein und fügen Sie alle Kontextinformationen in die Metafunktion ein. Dies ermöglicht Entwicklern das einfache Debuggen kritischer Fehler.

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

Abschluss

Die Integration einer vollständigen Protokollierungslösung in Ihre Node.js-Anwendung gewährleistet eine robuste Protokollverwaltung und effizientes Debuggen. Errsole bietet Protokollspeicher, ein integriertes Dashboard und Echtzeitbenachrichtigungen und ist damit ein umfassendes Protokollierungstool.

Um mit Errsole zu beginnen, besuchen Sie https://github.com/errsole/errsole.js.

Freigabeerklärung Dieser Artikel ist abgedruckt unter: https://dev.to/errsole/creating-a-custom-logger-for-a-nodejs-application-using-errsole-6bo?1 Bei Verstößen wenden Sie sich bitte an Study_golang@163 .com, um es zu löschen
Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3