TypeScript:
標準エラーへの書き込み
方法:
TypeScriptはJavaScriptのスーパーセットであるため、stderrへの書き込みには基盤となるJSのランタイム環境(Node.jsなど)に依存しています。これが直接行う方法です:
console.error("これはエラーメッセージです。");
stderrへのサンプル出力:
これはエラーメッセージです。
Node.js環境では、より低レベルの書き込みにprocess.stderr.write()
メソッドも使用できます:
process.stderr.write("低レベルのエラーメッセージ。\n");
stderrへのサンプル出力:
低レベルのエラーメッセージ。
より構造化されたエラーロギングには、winston
やpino
などの人気のサードパーティライブラリを使用することがあります。ここでは、winston
を使ってエラーをログする方法を紹介します:
まず、winston
をインストールします:
npm install winston
次に、TypeScriptファイルでそれを使用します:
import * as winston from 'winston';
const logger = winston.createLogger({
levels: winston.config.syslog.levels,
transports: [
new winston.transports.Console(),
new winston.transports.File({ filename: 'error.log', level: 'error' })
],
});
logger.error('winstonを使用してログされたエラー。');
これにより、エラーはコンソールとerror.log
という名前のファイルの両方に書き込まれます。ファイルに書き込む場合、ディスクスペースの使用に関連する問題を防ぐために、ファイルの権限とロールオーバーを管理することが重要です。