我试图让新的文件浏览器集成与Sails.js一起使用 在申请层面上获得新遗物非常简单:
var newrelic = require('newrelic');
// Start sails and pass it command line arguments
require('sails').lift(require('optimist').argv);
app.js中的
然而,要使浏览器工作正常,您需要在html头部的开头调用newrelic.getBrowserTimingHeader()
。
我尝试了各种各样的事情,例如向全局添加newrelic,(global.newrelic
)但似乎消失了,将它添加到config中的local.js,并将其作为配置传递给lift覆盖,然而这似乎也无效(我可能错误地传递了它)
那么有没有人知道如何从原始的app.js到布局文件中获取newrelic
变量?
答案 0 :(得分:4)
因此,当您在命令行上运行sails lift
时,它实际上并未使用app.js文件。
要使用它,你必须node app.js
。
我的app.js现在看起来像这样;
global.newrelic = require('newrelic');
require('sails').lift(require('optimist').argv);
然后在layout.ejs
中添加
<%- global.newrelic.getBrowserTimingHeader() %>
把东西放在全局可能不是最好的解决方案,但每当我把它放到sails.config中时,对象就搞砸了:(
答案 1 :(得分:0)
@cosmorogers首先,您的答案是完全有效的方法。为了澄清,您创建了一个名为newrelic
的新全局变量,无论您是否将其附加到global
,即newrelic=require('newrelic');
执行相同的操作。
因此,当您在命令行上运行sails lift时,它实际上并未使用app.js文件
确实 - 正如您所提到的,您可以随时使用node app.js
举起风帆。
此处提供了一些其他信息/评论:http://willricketts.com/using-newrelic-with-sails-js/#comment-1551000708