JavaScript:
Skriva till standardfel

Hur:

I Node.js kan skrivning till stderr utföras med metoden console.error() eller genom att skriva direkt till process.stderr. Här är exempel som demonstrerar båda tillvägagångssätten:

// Använda console.error()
console.error('Det här är ett felmeddelande.');

// Skriva direkt till process.stderr
process.stderr.write('Det här är ett annat felmeddelande.\n');

Exempelutdata för båda metoderna skulle visas i stderr-strömmen, utan att blanda sig med stdout:

Det här är ett felmeddelande.
Det här är ett annat felmeddelande.

För mer sofistikerad eller applikationsspecifik loggning använder många JavaScript-programmerare tredjepartsbibliotek som winston eller bunyan. Här är ett snabbt exempel med winston:

Först, installera winston via npm:

npm install winston

Konfigurera sedan winston att logga fel till stderr:

const winston = require('winston');

const logger = winston.createLogger({
  levels: winston.config.syslog.levels,
  transports: [
    new winston.transports.Console({
      stderrLevels: ['error']
    })
  ]
});

// Loggar ett felmeddelande
logger.error('Fel loggat genom winston.');

Denna setup säkerställer att när du loggar ett fel med winston, dirigeras det till stderr, vilket hjälper till att upprätthålla en tydlig separation mellan standard- och felutdata.