Log4js javascript 创建每日日志文件
Log4js javascript create daily log file
我有一个项目nodejs,使用log4js写日志。
我想在开始新日期时创建新文件日志。
示例:
每天。2017_07_31.log
每天。2017_08_01.log
每天。2017_08_02.log
每天。2017_08_03.log
在 java 中,我知道配置 log4j,但在带有 log4js 的 nodejs 中我不知道。
感谢大家的帮助:)
nodejs推荐winston。它非常容易使用。
创建一个 logger.js 文件并具有此配置 '
require('winston-daily-rotate-file');
var winston = require('winston');
winston.loggers.add('logger', {
transports: [
new (winston.transports.Console)(
{
level: config.debugLogLevel,
colorize: true
}),
//new files will be generated each day, the date patter indicates the frequency of creating a file.
new winston.transports.DailyRotateFile({
name: 'debug-log',
filename: '<log file name>',
level: '<level>',
prepend: true,
datePattern: '<pattern>',
maxFiles: <max file>
}
),
new (winston.transports.DailyRotateFile)({
name: 'error-log',
filename: '<log file name>',
level: '<level>',
prepend: true,
datePattern: '<pattern>',
maxFiles: <max file>
})
]
});
var logger = winston.loggers.get('logger');
Object.defineProperty(exports, "LOG", {value: logger});
现在你可以像
一样在任何地方使用它
var log = require('./logger.js').LOG
log.error('hello');
每日滚动未找到,但对于大小,log4js 的配置允许文件滚动。注意 maxLogSize、backups 和 compress 属性。其文档中的示例:
log4js.configure({
appenders: {
everything: {
type: 'file',
filename: 'all-the-logs.log',
maxLogSize: 10485760,
backups: 3,
compress: true
}
},
categories: {
default: { appenders: [ 'everything' ], level: 'debug'}
}
});
见https://github.com/log4js-node/log4js-node/blob/master/docs/file.md
参见:https://github.com/log4js-node/log4js-node/blob/master/docs/dateFile.md
log4js.configure({
appenders: {
everything: { type: 'dateFile', filename: 'all-the-logs.log' }
},
categories: {
default: { appenders: [ 'everything' ], level: 'debug' }
}
});
This example will result in files being rolled every day. The initial
file will be all-the-logs.log, with the daily backups being
all-the-logs.log.2017-04-30, etc.
我有一个项目nodejs,使用log4js写日志。
我想在开始新日期时创建新文件日志。
示例:
每天。2017_07_31.log
每天。2017_08_01.log
每天。2017_08_02.log
每天。2017_08_03.log
在 java 中,我知道配置 log4j,但在带有 log4js 的 nodejs 中我不知道。
感谢大家的帮助:)
nodejs推荐winston。它非常容易使用。
创建一个 logger.js 文件并具有此配置 '
require('winston-daily-rotate-file');
var winston = require('winston');
winston.loggers.add('logger', {
transports: [
new (winston.transports.Console)(
{
level: config.debugLogLevel,
colorize: true
}),
//new files will be generated each day, the date patter indicates the frequency of creating a file.
new winston.transports.DailyRotateFile({
name: 'debug-log',
filename: '<log file name>',
level: '<level>',
prepend: true,
datePattern: '<pattern>',
maxFiles: <max file>
}
),
new (winston.transports.DailyRotateFile)({
name: 'error-log',
filename: '<log file name>',
level: '<level>',
prepend: true,
datePattern: '<pattern>',
maxFiles: <max file>
})
]
});
var logger = winston.loggers.get('logger');
Object.defineProperty(exports, "LOG", {value: logger});
现在你可以像
一样在任何地方使用它var log = require('./logger.js').LOG
log.error('hello');
每日滚动未找到,但对于大小,log4js 的配置允许文件滚动。注意 maxLogSize、backups 和 compress 属性。其文档中的示例:
log4js.configure({
appenders: {
everything: {
type: 'file',
filename: 'all-the-logs.log',
maxLogSize: 10485760,
backups: 3,
compress: true
}
},
categories: {
default: { appenders: [ 'everything' ], level: 'debug'}
}
});
见https://github.com/log4js-node/log4js-node/blob/master/docs/file.md
参见:https://github.com/log4js-node/log4js-node/blob/master/docs/dateFile.md
log4js.configure({
appenders: {
everything: { type: 'dateFile', filename: 'all-the-logs.log' }
},
categories: {
default: { appenders: [ 'everything' ], level: 'debug' }
}
});
This example will result in files being rolled every day. The initial file will be all-the-logs.log, with the daily backups being all-the-logs.log.2017-04-30, etc.