是否有任何库可以帮助我处理 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');
关于Node.js 日志记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12016474/