参考资料
问题来源
最近在学习express,其中常用的一个模块就是对日志的管理,日志的重要性我就不用多说了,书中介绍的是用log4js
这个第三方插件,我这里只是作为学习笔记记录
安装
npm install -D log4js
案例
定义日志的引用
var log4js = require('log4js');
log4js.configure({
appenders: {
ruleConsole: {type: 'console'},
ruleFile: {
type: 'dateFile',
// 这个目录是相对于根目录的,即与app.js 是同一级的
filename: 'logs/server-',
pattern: 'yyyy-MM-dd.log',
maxLogSize: 10 * 1000 * 1000,
numBackups: 3,
alwaysIncludePattern: true
}
},
categories: {
default: {appenders: ['ruleConsole', 'ruleFile'], level: 'info'}
}
});
var logger = log4js.getLogger('normal');
exports.logger = logger;
exports.use = function (app) {
//页面请求日志,用auto的话,默认级别是WARN
//这样会自动记录每次请求信息,放在其他use上面
app.use(log4js.connectLogger(logger, {level: 'debug', format: ':method :url'}));
}
注意:我这里的案例用的是4.x版本,与2.x之前的差异比较大
express 引入 log4js
const express = require("express");
const http = require("http");
const app = express();
const log = require('./routes/config/logConfig');
var logger = require('./config/logConfig').logger;
// 添加Log4js配置 /
//结合express使用,记录请求日志
log.use(app);
//手动记录,可以代替console.log
logger.info('test info 1');
http.createServer(app).listen(3000);