【问题标题】:Integrating NewRelic with SailsJS and SocketIO (web sockets)将 NewRelic 与 SailsJS 和 SocketIO(网络套接字)集成
【发布时间】:2014-06-20 04:11:40
【问题描述】:

我已成功将 NewRelic 集成到我的 Sails 安装中,但是 NewRelic 控制面板上的统计信息中只显示了对 api 的直接 http 调用。通过 SocketIO 接口进行的内部调用似乎没有注册(这是我们进行的大部分调用)。 有没有人让 Web 套接字调用显示在 NewRelic 中?

这是我目前在 app.js 中使用的代码

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

【问题讨论】:

标签: node.js socket.io sails.js newrelic


【解决方案1】:

SocketIO 是基于会话的,它假定与事务性 HTTP 请求完全不同的性能模型,New Relic Node.Js 代理专门采用了这种模型。使用 Sails 框架,您经常会绕过此类请求。由于 Sails.js 框架将 http 封装在套接字请求中,因此 New Relic 目前无法监控这些事务。

【讨论】:

  • OP 声明他正在通过套接字发出请求,并且这些请求没有出现在 NewRelic 中。使用套接字是他的选择;它与 Sails 的工作方式无关。从客户端到 Sails 的 HTTP 请求不会以任何方式“包装在套接字请求中”。您可以使用 Sails 套接字客户端通过套接字与后端通信——因此,socket.get('/users') 将运行相同的后端代码并返回与 jQuery $.get('/users') 相同的结果——但同样,这是您的选择。问题是,为什么在 OP 的情况下这些请求没有被注册?
猜你喜欢
  • 2013-03-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-02-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多