ログ出力時に、自動的に行数などが出力されるようにする
今回は、log4js
の拡張機能を使用する
log4js-extend
インストール
$ npm install log4js-extend
使い方
const log4js = require("log4js"); const log4ex = require("log4js-extend"); log4js.configure({ // 外部ファイルに出力 appenders: { system: {type: 'file', filename: './logs/system.log'} }, categories: { default: {appenders: ['system'], level: 'debug'} } }) log4ex(log4js, { path: __dirname, format: "at @name (@file:@line:@column)" }); const logger = log4js.getLogger(); log_test(); function log_test() { logger.debug("test"); }
出力はこんな感じになる
[2019-08-06T20:53:53.929] [DEBUG] default - test at log_test (app.js:19:10)
オプション部分について
log4ex(log4js, { path: __dirname, format: "at @name (@file:@line:@column)" });
path
相対パスを使用する
default: null
format
詳細ログのフォーマット
default: "at @name (@file:@line:@column)"
キーワード一覧
- @name : ファンクション名
- @file : ファイル名
- @line : 行数
- @column : 行頭からの文字数