【log4js】ログをファイルに出力する

ログを簡単に外部ファイルに出力する

log4js

GitHub - log4js-node/log4js-node: A port of log4js to node.js
A port of log4js to node.js. Contribute to log4js-node/log4js-node development by creating an account on GitHub.

インストール

$ npm install log4js

使い方

一番簡単なパターン

logger.levelで出力するログの最低レベルを指定する。

const log4js = require('log4js');
var logger = log4js.getLogger();
logger.level = 'debug';
logger.debug('debug msg');

基本のパターン

./logs/system.logに出力する場合

const log4js = require('log4js');
 
log4js.configure({
  appenders: {
      system: {type: 'file', filename: './logs/system.log'}
  },
  categories: {
    default: {appenders: ['system'], level: 'debug'}
  }
});
const logger = log4js.getLogger('cheese');
 
logger.trace('trace msg');
logger.debug('debug msg');
logger.info('info msg');
logger.warn('warn msg');
logger.error('error msg');
logger.fatal('fatal msg');

configure内部は別ファイルに記述することもできる。

log4js.configure('./filename');

念のため:ログレベルについて

ちゃんと以下の表を守ってログ出力する(自分への戒め)

レベル 概要 備考 出力先 運用時の対応
FATAL 致命的なエラー 異常終了を伴うようなエラー コンソール、ファイル 即時対応
ERROR エラー 予期しない実行時エラー コンソール、ファイル 営業時間内のみ対応
WARN 警告 不具合とは言い切れない、予期しない問題 コンソール、ファイル 次回リリースまでに対応
INFO 情報 実行時の注目すべき事象 コンソール、ファイル 対応不要
DEBUG デバッグ情報 動作状況に関する詳細な情報 ファイル 出力しない
TRACE トレース情報 デバッグ情報よりもさらに詳細な情報 ファイル 出力しない
タイトルとURLをコピーしました