Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/423.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Sails.js日志传输取决于环境_Javascript_Node.js_Logging_Sails.js_Logentries - Fatal编程技术网

Javascript Sails.js日志传输取决于环境

Javascript Sails.js日志传输取决于环境,javascript,node.js,logging,sails.js,logentries,Javascript,Node.js,Logging,Sails.js,Logentries,我有一个Sails.js项目,我想为事件日志添加日志条目支持。但是,我只希望在某些环境中使用日志条目 例如,在开发中,我不想用开发垃圾填充日志 // config/log.js var logentries = require('le_node'); var log = (sails.config.environment === 'development') ? sails.log : logentries.logger({ token: 'YOUR_TOKEN' }); module.

我有一个Sails.js项目,我想为事件日志添加日志条目支持。但是,我只希望在某些环境中使用日志条目

例如,在开发中,我不想用开发垃圾填充日志

// 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
。那么,在这种情况下,如何根据环境使用自定义日志传输呢?

在所有配置模块中,我发现您不能只编写
sails.config.someModule
。只需使用典型的
var someModule=require(./someModule)
。这样做更容易。

最后,似乎正确的做法不是直接修改
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
  }
}

这样,只有生产环境才会有自定义日志记录。

在其周围包装一个函数,以便您可以从拥有配置的位置传入配置
var logger=require(“log”).log(“dev”)
,该函数应返回一个函数,该函数是您在没有额外尾随参数调用的情况下获得的函数。我已经了解到,不建议要求其他配置文件中的配置文件()