JavaScript:
Scrivere sull'errore standard
Come:
In Node.js, scrivere su stderr può essere realizzato utilizzando il metodo console.error()
o scrivendo direttamente su process.stderr
. Ecco degli esempi che dimostrano entrambi gli approcci:
// Usando console.error()
console.error('Questo è un messaggio di errore.');
// Scrivendo direttamente su process.stderr
process.stderr.write('Questo è un altro messaggio di errore.\n');
L’output di esempio per entrambi i metodi apparirebbe nel flusso stderr, senza mischiarsi con stdout:
Questo è un messaggio di errore.
Questo è un altro messaggio di errore.
Per una registrazione più sofisticata o specifica dell’applicazione, molti programmatori JavaScript utilizzano librerie di terze parti come winston
o bunyan
. Ecco un rapido esempio usando winston
:
Prima, installa winston
tramite npm:
npm install winston
Poi, configura winston
per registrare gli errori su stderr:
const winston = require('winston');
const logger = winston.createLogger({
levels: winston.config.syslog.levels,
transports: [
new winston.transports.Console({
stderrLevels: ['error']
})
]
});
// Registrando un messaggio di errore
logger.error('Errore registrato attraverso winston.');
Questa configurazione assicura che quando registri un errore usando winston
, questo viene indirizzato su stderr, aiutando a mantenere una chiara separazione tra output standard e errori.