log4js 2.x的配置使用
刚好有需求,写一个log文件,记录信息。但是在网上找了很久没有合适的方案来给我一个新手去使用的。最终在github上找到一个demo,方案 很好,拿来配置了一下,感觉很不错。地址:https://github.com/xrian/node-log4j2-example首先需要做的,创建一个log4js的配置文件。log4js.json{"appenders": {"conso
刚好有需求,写一个log文件,记录信息。但是在网上找了很久没有合适的方案来给我一个新手去使用的。最终在github上找到一个demo,方案 很好,拿来配置了一下,感觉很不错。地址:https://github.com/xrian/node-log4j2-example
首先需要做的,创建一个log4js的配置文件。log4js.json
{
"appenders": {
"console": {
"type": "console"
},
"trace": {
"type": "file",
"filename": "log/access.log",
"maxLogSize ": 31457280
},
"http": {
"type": "logLevelFilter",
"appender": "trace",
"level": "trace",
"maxLevel": "trace"
},
"info": {
"type": "dateFile",
"filename": "log/app-info.log",
"pattern": ".yyyy-MM-dd",
"layout": {
"type": "pattern",
"pattern": "[%d{ISO8601}][%5p %z %c] %m"
},
"compress": true
},
"maxInfo": {
"type": "logLevelFilter",
"appender": "info",
"level": "debug",
"maxLevel": "info"
},
"error": {
"type": "dateFile",
"filename": "log/app-error.log",
"pattern": ".yyyy-MM-dd",
"layout": {
"type": "pattern",
"pattern": "[%d{ISO8601}][%5p %z %c] %m"
},
"compress": true
},
"minError": {
"type": "logLevelFilter",
"appender": "error",
"level": "error"
}
},
"categories": {
"default": {
"appenders": [
"console",
"http",
"maxInfo",
"minError"
],
"level": "all"
}
}
}
config\log4j.json是配置文件 配置了三个类别 一个是http请求日志,相当于tomcat的access日志,当日志到达30M时,重新生成一个新的文件 一个是保存debug和info级别的日志.每天生成一个新的文件 一个是保存error及以上等级的日志.每天生成一个新的文件
之后,在app.js文件中,使用log4js
修改app.js 在顶部引入
var log4js = require('log4js');
log4js.configure('config/log4j.json');
这样,就可以在项目中的其他地方使用log4j输出日志了.
var logger = require('log4js').getLogger("index");
logger.info('');
logger.error('');
将log4j整合进入express
在app.js中,将express默认的日志模块注释掉,并且加载log4js模块
// app.use(logger('dev'));
app.use(log4js.connectLogger(log4js.getLogger("http"), { level: 'trace' }));
app.use(log4js.connectLogger(…))这代码,最好是放在其他的app.use()前面
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)