【发布时间】:2014-10-02 09:17:21
【问题描述】:
我想使用内置的 Sails.js 记录器并将所有内容记录到文件中。 “filePath”变量曾经在 config/log.js 中的 0.9.x 中工作,但它似乎不再在 0.10.x 中工作。是否已删除此功能 - 如果是,现在记录到磁盘的最佳方式是什么?
【问题讨论】:
标签: node.js logging sails.js error-logging
我想使用内置的 Sails.js 记录器并将所有内容记录到文件中。 “filePath”变量曾经在 config/log.js 中的 0.9.x 中工作,但它似乎不再在 0.10.x 中工作。是否已删除此功能 - 如果是,现在记录到磁盘的最佳方式是什么?
【问题讨论】:
标签: node.js logging sails.js error-logging
对于日志记录,Sails.js (>= 0.10.0) 依赖于 captains-log,这是一个“具有简单传递配置的轻量级记录器,可与更高级的日志记录库一起使用。”
要记录到文件,您需要配置自定义记录器。我建议您使用Winston,并使用File Transport 进行配置。这相对容易做到:
$ npm install winston --save
var winston = require('winston');
var customLogger = new winston.Logger({
transports: [
new(winston.transports.File)({
level: 'debug',
filename: './logs/my_log_file.log'
}),
],
});
module.exports.log = {
colors: false, // To get clean logs without prefixes or color codings
custom: customLogger
};
sails.log.debug("Message to be logged");
$ sails lift
您应该会看到内容存储在您的 ./logs/my_log_file.log 文件中。
【讨论】: