ログを簡単に外部ファイルに出力する
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 | トレース情報 | デバッグ情報よりもさらに詳細な情報 | ファイル | 出力しない |