注:log4js日志级别,分别为:<权值从小到大>
all < trace < debug < info < warn < error < fatal < mark < off
1.//-----------同一文件,不同 level 日志输出-----------
var log4js = require('log4js');
log4js.configure({
appenders: {
out: { type: 'console' }, //控制台输出
app: {
type: "dateFile",
filename: 'logs/log.log',
pattern: "-yyyy-MM-dd",
alwaysIncludePattern: false,
}
},
categories: {
default: { appenders: ['out'], level: 'info' },
logFile: { appenders: ['out', 'app'], level: 'ALL' },
},
replaceConsole: true, //替换console.log
});
var fileLog = log4js.getLogger('logFile');
fileLog.trace('111111');
fileLog.debug('222222');
fileLog.info('333333');
fileLog.warn('444444');
fileLog.error('555555');
fileLog.fatal('666666');
exports.logger = fileLog;
exports.use = function (app) {
//页面请求的日志
app.use(log4js.connectLogger(fileLog));
}
console.log("--------结束");
var log4js = require('log4js');
log4js.configure({
replaceConsole: true,
appenders: {
out: { type: 'console' }, //控制台输出
debug: {//debug日志
type: 'dateFile',
filename: 'logs/debug_logs/deb', // 首先手动建好目录,写入日志文件的路径
//maxLogSize: 1024, // 只在 type: 'file' 中才支持
// 指定pattern后无限备份,pattern精确到ss(秒)就是一秒一个文件,精确到mm(分)就是一分一个文件,hh(小时),dd(天),MM(月),yyyy(年)
pattern: 'yyyy-MM-dd.log',
encoding: 'utf-8', //文件的编码
alwaysIncludePattern: true // 不指定pattern时若为true会使用 默认值'.yyyy-MM-dd'
daysToKeep:10,//时间文件 保存多少天,以前的log将被删除
//compress : true,//(默认为false) - 在滚动期间压缩备份文件(备份文件将具有.gz扩展名)
},
err: { //err日志
type: 'dateFile',
filename: 'logs/error_logs/err',
pattern: 'yyyy-MM-dd.log',
alwaysIncludePattern: true
},
info: { //info日志
type: 'dateFile',
filename: 'logs/info_logs/info',
pattern: 'yyyy-MM-dd.log',
alwaysIncludePattern: true
},
fatal: { //fatal日志
type: 'dateFile',
filename: 'logs/fatal_logs/ftl',
pattern: 'yyyy-MM-dd.log',
alwaysIncludePattern: true
}
},
categories: {
//appenders:采用的appender,取appenders项,level:设置级别
default: { appenders: ['out', 'debug'], level: 'debug' },
err: { appenders: ['out', 'err'], level: 'error' },
info: { appenders: ['out', 'info'], level: 'info' },
fatal: { appenders: ['out', 'fatal'], level: 'fatal' },
}
})
//debug日志
var debugLog = log4js.getLogger('debug');
debugLog.info('~~111~~debug log~~111~~');
//info日志
var infoLog = log4js.getLogger('info');
infoLog.info('~~222~~info log~~222~~');
//err日志
var errorLog = log4js.getLogger('err');
errorLog.error('~~333~~err log~~333~~');
//fatal日志
var fatalLog = log4js.getLogger('fatal');
fatalLog.fatal('~~444~~fatal log~~444~~');
console.log("--------结束");