我有一个Sails.js项目,我想为事件记录添加LogEntries支持。但是我想仅在某些环境中使用LogEntries。
例如,在开发中,我不想用开发垃圾填充日志。
// config/log.js
var logentries = require('le_node');
var log = (sails.config.environment === 'development') ? sails.log : logentries.logger({
token: 'YOUR_TOKEN'
});
module.exports.log = {
log: {
custom: log
}
}
但是有了这个,我得到一个错误,sails
没有定义。这是因为sails
对象在config/log.js
等配置文件中不可用。那么在这种情况下如何根据环境使用自定义日志传输呢?
答案 0 :(得分:2)
最后看似正确的不是直接修改config/log.js
文件而是修改环境配置文件:
// config/env/production.js
var logentries = require('le_node');
var log = logentries.logger({
token: 'YOUR_TOKEN'
});
module.exports.log = {
log: {
custom: log
}
}
这样只有生产环境才会有自定义日志记录。
答案 1 :(得分:0)
在所有配置模块中,我发现你不能只写sails.config.someModule
。只需使用典型的var someModule = require(./someModule)
即可。这样更容易。