Log4js javascript 创建每日日志文件

phu*_*mai 5 node.js npm express log4js-node

我有一个nodejs项目,使用log4js来写日志。我想在开始新日期时创建新的文件日志。
示例:
daily.2017_07_31.log
daily.2017_08_01.log
daily.2017_08_02.log
daily.2017_08_03.log

在java中,我知道配置log4j,但在带有log4js的nodejs中我不知道。感谢大家的帮助:)

Man*_*wat 4

对于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});
Run Code Online (Sandbox Code Playgroud)

现在你可以在任何地方使用它,比如

var log = require('./logger.js').LOG
log.error('hello');
Run Code Online (Sandbox Code Playgroud)