JavaScript:
標準エラーへの書き込み
方法:
Node.jsでは、stderrへの書き込みはconsole.error()メソッドを使用するか、process.stderrに直接書き込むことで達成できます。以下に両方のアプローチを示す例を示します:
// console.error()を使用
console.error('これはエラーメッセージです。');
// process.stderrに直接書き込む
process.stderr.write('これは別のエラーメッセージです。\n');両方の方法のサンプル出力は、stdoutと混在せずにstderrストリームに表示されます:
これはエラーメッセージです。
これは別のエラーメッセージです。より洗練された、またはアプリケーション固有のログ記録のために、多くのJavaScriptプログラマーはwinstonやbunyanのようなサードパーティのライブラリを使用します。winstonを使用した簡単な例を示します:
まず、npm経由でwinstonをインストールします:
npm install winston次に、winstonを配置して、エラーをstderrに記録します:
const winston = require('winston');
const logger = winston.createLogger({
levels: winston.config.syslog.levels,
transports: [
new winston.transports.Console({
stderrLevels: ['error']
})
]
});
// エラーメッセージのログ記録
logger.error('エラーがwinstonを通して記録されました。');このセットアップにより、winstonを使用してエラーをログ記録する場合、stderrに向けられ、標準出力とエラー出力の明確な区分を維持するのに役立ちます。