Graylog: Node.js-Logs mit dem Winston GELF-Paket an Graylog senden

Diese Dokumentation ist Teil des Verwendung mit Node.js-Leitfadens. Den vollständigen Leitfaden finden Sie hier: Wie Sie Logs von Node.js an Graylog senden.

👋 Willkommen bei der Stackhero-Dokumentation!

Stackhero bietet eine einsatzbereite Graylog Cloud-Lösung, die zahlreiche Vorteile bietet, darunter:

  • Unbegrenzter und dedizierter SMTP-E-Mail-Server inklusive.
  • Mühelose Updates mit nur einem Klick.
  • Anpassbarer Domainname gesichert mit HTTPS (zum Beispiel, https://logs.ihre-firma.com).
  • Optimale Performance und robuste Sicherheit durch eine private und dedizierte VM.

Sparen Sie Zeit und vereinfachen Sie Ihr Leben: Es dauert nur 5 Minuten, um die Graylog Cloud Hosting-Lösung von Stackhero auszuprobieren!

warning Es wird empfohlen, das graylog2-Paket zu verwenden, es sei denn, Winston ist bereits Teil Ihres Projekts. In diesem Fall können Sie stattdessen winston-gelf einsetzen.

Um das Winston GELF-Paket zu installieren, führen Sie aus:

npm install winston-gelf

Falls Winston noch nicht in Ihrem Projekt ist, können Sie es mit folgendem Befehl hinzufügen:

npm install winston

Hier ein einfaches Setup:

const winston = require('winston');
const winstonGelf = require('winston-gelf');
const process = require('process');

const logger = winston.createLogger({
  transports: [
    new winston.transports.Console(),
    new winstonGelf({
      // Alle gelfPro-Optionen finden Sie hier: https://www.npmjs.com/package/gelf-pro
      gelfPro: {
        fields: {
          env: process.env.NODE_ENV || 'development'
        },
        adapterName: 'udp',
        adapterOptions: {
          host: '<XXXXXX>.stackhero-network.com', // Ersetzen Sie dies durch Ihre Graylog-Domain
          port: 12201,
        }
      }
    })
  ]
});

// Beispiel für einen Info-Log
logger.info('This is a log information');

// Beispiel für einen Fehler-Log
try {
  throw Error('This is an example error');
}
catch(error) {
  logger.warn({ message: 'Error triggered', error });
}

Vergessen Sie nicht, Ihren Graylog-Input zu konfigurieren (Details unten).