Graylog: Node.js-Logs mit dem graylog2-Paket an Graylog senden (empfohlen)
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!
Das Senden von Logs aus Node.js an Graylog ist sehr unkompliziert. In diesem Beispiel erfahren Sie, wie Sie das graylog2-Paket nutzen, um diesen Prozess nahtlos zu gestalten.
Um zu starten, installieren Sie das Paket mit folgendem Befehl:
npm install graylog2
So können Sie es verwenden, um Nachrichten zu protokollieren:
const graylog2 = require('graylog2');
const crypto = require('crypto');
const logger = new graylog2.graylog({
servers: [{ host: '<XXXXXX>.stackhero-network.com', port: 12201 }] // Ersetzen Sie "host" durch Ihre Graylog-Domain
});
// Senden Sie eine einfache Nachricht an Graylog
logger.log('Simple message example');
// Fügen Sie einer Nachricht zusätzliche Daten hinzu
logger.log(
'Password recovery email', // Nachricht
// Ein JSON-Objekt mit weiteren Details
{
subject: 'Password recovery',
language: 'en_US',
domain: 'gmail.com'
}
);
// Fortgeschrittenes Beispiel
const ip = '1.2.3.4';
const ipHash = crypto.createHash('md5').update(ip).digest('hex');
const userId = '1234';
const userIdHash = crypto.createHash('md5').update(userId).digest('hex');
logger.log(
'API request', // Nachricht
// Ein JSON-Objekt mit weiteren Details
{
route: '/v1/messages/1234/',
method: 'POST',
responseTime: 12, // ms
responseCode: 200,
ipHash,
userIdHash
}
);
// Nicht abgefangene Ausnahmen in Node.js protokollieren
process.on(
'uncaughtException',
err => {
logger.log(
err,
{ type: 'uncaughtException' }
);
}
);
Weitere Beispiele finden Sie in diesem GitHub-Repository.
warning Vergessen Sie nicht, Ihren Graylog-Input zu konfigurieren (Details unten).