TypeError:msecs必须是正在运行的应用程序中的数字

昨天,我在高峰时间遇到了所有API服务器的奇怪问题。 有下面提到的间歇性错误。 我正在使用该应用程序使用多个第三方服务。 与应用程序一起使用的一些服务是newrelic,airbrake,推等

堆栈:

Node v0.12.2 pm2 2.4.5 request module: 2.81.0 

错误:

 Uncaught TypeError: msecs must be a number at Object.exports.enroll (timers.js:156:11) at Socket.setTimeout (net.js:329:12) at ClientRequest.<anonymous> (_http_client.js:558:10) at ClientRequest.g (events.js:199:16) at ClientRequest.emit (events.js:129:20) at tickOnSocket (_http_client.js:486:7) at _http_client.js:497:7 at process._tickCallback (node.js:355:11) Errors in airbrake: Error: msecs must be a number timers.js:156 in Object.exports.enroll net.js:337 in Socket.setTimeout _http_client.js:565 events.js:199 in ClientRequest.g events.js:129 in ClientRequest.emit _http_client.js:493 in tickOnSocket _http_client.js:504 node.js:381 in process._tickDomainCallback 

我已经尝试过,但没有任何帮助。 错误持续12-15小时。

  1. 将节点版本更新到6.9.1
  2. 降级请求模块版本至2.2.1
  3. 尝试添加请求超时在我已经使用请求configuration。

    var request = require('request')request = request.defaults({timeout:120000})

  4. 尝试与节点运行app.js。

  5. 尝试在.bowerrc中添加超时。
  6. 再次部署了新的服务器和代码,但错误仍然存​​在。

过去3小时没有再次发生错误。 我无法findRCA,也不能确定它是否在繁忙时间重新出现。

任何想法将不胜感激。