是否有任何库可以帮助我处理 Node.Js 应用程序中的日志记录?我想要做的就是,我想将所有日志写入一个文件,并且我需要一个选项,比如在特定大小或日期之后推出文件。
我已经合并了 log4js,我试图将所有配置细节保存在一个文件中,并且只使用其他应用程序文件中的方法以便于维护。但它没有按预期工作。这是我想要做的
var log4js = require('log4js'); log4js.clearAppenders() log4js.loadAppender('file'); log4js.addAppender(log4js.appenders.file('test.log'), 'test'); var logger = log4js.getLogger('test'); logger.setLevel('ERROR'); var traceLogger = function (message) { logger.trace('message'); }; var errorLogger = function (message) { logger.trace(message); }; exports.trace = traceLogger; exports.error = errorLogger;
我已将此文件包含在其他文件中并尝试过
log.error ("Hello Error Message");
但它不起作用。这有什么问题吗?
Winston是一个非常好的日志库。您可以使用它将日志写入文件。
代码看起来像:
var winston = require('winston'); var logger = new (winston.Logger)({ transports: [ new (winston.transports.Console)({ json: false, timestamp: true }), new winston.transports.File({ filename: __dirname + '/debug.log', json: false }) ], exceptionHandlers: [ new (winston.transports.Console)({ json: false, timestamp: true }), new winston.transports.File({ filename: __dirname + '/exceptions.log', json: false }) ], exitOnError: false }); module.exports = logger;
然后,您可以像这样使用它:
var logger = require('./log'); logger.info('log to file');