這里我們采用的是log4js模塊來實現(xiàn)日志記錄的功能
log4js = require("log4js");
log4js.configure({
appenders: [
{ type: 'console' }, //控制臺輸出
{
type: 'file', //文件保存
filename: 'logs/access.log',
maxLogSize:1024*100,
backups:4
}
],
replaceConsole: true
});
logger = log4js.getLogger("normal");
app.use(log4js.connectLogger(logger, {
level: log4js.levels.TRACE
}));
index.js文件如果需要調(diào)用錯誤處理日志椰于,則通過
var logger = require('../app').logger('index');
來調(diào)用
exports.logger=function(name){
var logger = log4js.getLogger(name);
logger.setLevel('TRACE');
return logger;
}
當服務(wù)器進程異常時記錄錯誤日志
process.on('uncaughtException', function(err){
logger.info(err.stack);
});
路由里的錯誤日志
app.use(function(err, req, res, next) {
logger.info(err.stack);
return res.status(err.status || 500).end();
});
其他地方的日志使用logger.info()來替代console.log()