Nodejs应用集成log4js

引入log4js

npm install log4js

新建logs文件夹并在文件夹中新建index.js,配置log4js

const log4js = require('log4js');
import config from '../config';

log4js.addLayout('json', function (config) {
    return function (logEvent) {
        return JSON.stringify(logEvent) + config.separator
    }
});
log4js.configure({
    appenders: {
        out: {
            type: 'stdout',
            layout: {
                type: 'pattern',
                pattern: 'time:%d{yyyy-MM-dd hh:mm:ss,SSS}%nlevel:[%p]%nmessage:%m%n------------------------------------'
            }
        },
        info: {
            type: 'dateFile',
            filename: `${config.logging.path ? config.logging.path : 'logs/log'}/info.log`,
            layout: {
                type: 'pattern',
                pattern: 'time:%d{yyyy-MM-dd hh:mm:ss,SSS}%nlevel:[%p]%nmessage:%m%n------------------------------------'
            }
        },
        err: {
            type: 'dateFile',
            filename: `${config.logging.path ? config.logging.path : 'logs/log'}/error.log`,
            layout: {
                type: 'pattern',
                pattern: 'time:%d{yyyy-MM-dd hh:mm:ss,SSS}%nlevel:[%p]%nmessage:%m%n------------------------------------'
            }
        }
    },
    categories: {
        default: {appenders: ['out', 'info'], level: 'debug'},
        error: {appenders: ['err'], level: 'debug'},
    }
});
const infoLogger = log4js.getLogger();
const errLogger = log4js.getLogger("error");
export default log4js;
export {
    log4js,
    infoLogger,
    errLogger
}

config文件是系统参数文件,里面配置了日志的存储位置

在app.js中引入logs/index.js

var {log4js, infoLogger} = require('./logs');

app.use(log4js.connectLogger(infoLogger, {level: 'info', format: ':method:url'}));

使用示例

const {infoLogger} = require('../logs');
infoLogger.info('这是我的日志')

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容