Graylog: Inviare i log di Node.js a Graylog con il pacchetto graylog2 (consigliato)
Questa documentazione fa parte della guida Utilizzo con Node.js. Consulta la guida completa qui: Come inviare i log da Node.js a Graylog.
👋 Benvenuti nella documentazione di Stackhero!
Stackhero offre una soluzione Graylog cloud pronta all'uso che fornisce numerosi vantaggi, tra cui:
- Server email SMTP illimitato e dedicato incluso.
- Aggiornamenti senza sforzo con un solo clic.
- Nome di dominio personalizzabile sicuro con HTTPS (ad esempio, https://logs.tua-azienda.com).
- Prestazioni ottimali e sicurezza robusta grazie a una VM privata e dedicata.
Risparmia tempo e semplifica la tua vita: bastano 5 minuti per provare la soluzione Graylog cloud hosting di Stackhero!
Inviare i log da Node.js a Graylog è molto semplice. In questo esempio, vedrete come utilizzare il pacchetto graylog2 per rendere questo processo immediato.
Per iniziare, è possibile installare il pacchetto eseguendo il seguente comando:
npm install graylog2
Ecco come potete utilizzarlo per registrare i messaggi:
const graylog2 = require('graylog2');
const crypto = require('crypto');
const logger = new graylog2.graylog({
servers: [{ host: '<XXXXXX>.stackhero-network.com', port: 12201 }] // Assicuratevi di sostituire "host" con il vostro dominio Graylog
});
// Invia un messaggio semplice a Graylog
logger.log('Simple message example');
// Associa dati aggiuntivi a un messaggio
logger.log(
'Password recovery email', // Messaggio
// Un oggetto JSON con dettagli aggiuntivi
{
subject: 'Password recovery',
language: 'en_US',
domain: 'gmail.com'
}
);
// Esempio avanzato
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', // Messaggio
// Un oggetto JSON con ulteriori dettagli
{
route: '/v1/messages/1234/',
method: 'POST',
responseTime: 12, // ms
responseCode: 200,
ipHash,
userIdHash
}
);
// Log delle eccezioni non gestite in Node.js
process.on(
'uncaughtException',
err => {
logger.log(
err,
{ type: 'uncaughtException' }
);
}
);
Per ulteriori esempi, potete consultare questo repository GitHub.
warning Non dimenticate di configurare il vostro input Graylog (vedi dettagli sotto).