2014-05-10 54 views
1

我试图获得新的遗物浏览器集成与Sails.js 工作获得新的遗物在applicatin一级工作很简单:Sails.js和New Relic的(浏览器集成)

var newrelic = require('newrelic'); 
// Start sails and pass it command line arguments 
require('sails').lift(require('optimist').argv); 
在应用

。 js

但是为了让浏览器能够正常工作,您需要在html头部的开头调用newrelic.getBrowserTimingHeader()。 (global.newrelic),但似乎消失了,将它添加到配置中的local.js,并将它作为配置覆盖传递给提升,但是那不会似乎也没有工作(我可能通过它错误)

因此,有没有人有任何想法如何我可以从原始app.js newrelic变量的布局文件?

回答

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对象弄乱:(

+0

你从拉我的头发救了我! – Ranjan

0

@cosmorogers首先,您的答案是完全有效的方法,为了澄清,您正在创建一个新的全局变量newrelic,无论您是否将其附加到global或不是 - 即newrelic=require('newrelic');做同样的事情。

所以原来当您运行帆解除命令行上它实际上并不使用app.js文件

Indeed-和你所提到的,你可以随时解除与帆代替node app.js

一些额外的信息/评论这里:http://willricketts.com/using-newrelic-with-sails-js/#comment-1551000708