【问题标题】:azure mobile services error ECONNREFUSED every 2 mins天蓝色移动服务错误 ECONNREFUSED 每 2 分钟
【发布时间】:2015-12-13 02:04:02
【问题描述】:

我在 2 天前使用新数据库创建了一个新的 azure 移动服务,突然之间,我得到了

An unhandled exception occurred. Error: connect ECONNREFUSED
    at errnoException (net.js:770:11)
    at Object.afterConnect [as oncomplete] (net.js:761:19)

在控制台中。该服务还没有流量,我不知道这个错误是从哪里发出的。 有没有办法拦截 azure 移动服务上的 http 服务。

我看到过有关 node.js 的帖子,他们使用下面的代码进行拦截,但不知道如何在 azure 移动服务上执行此操作。

http.globalAgent.createConnection = function (options) {
  var socket = net.createConnection(options)
  socket.on('error', function (error) {
    errorCounter += 1;
    error.socketErrorId = errorCounter;
    console.log('socket error, while connecting to ', options.href, error);
  })
  return socket
}

PS。我知道可以从https://anymobileservice.scm.azure-mobile.net/default.aspx 访问的 KUDU 服务

console.log snapshot

【问题讨论】:

  • 这通常意味着与数据库连接的连接失败。仔细检查您的防火墙规则并确保启用了允许 Azure 服务。您是否可能启用了 SQL 审计? Azure 移动服务当前不支持 SQL 审核,并且在打开审核时将在移动服务日志中显示为数据库连接问题。
  • 你使用过任何自定义的 Node.js 模块吗?
  • gb92:不确定如何启用 sql 审计。我使用了默认的 azure mobile services 生成的数据库。 Gary Liu - MSFT:我使用的是 stripe、winston-papertrail、winston、jsontoxml、xml、pubnub、twilio 和 Braintree

标签: node.js azure azure-mobile-services


【解决方案1】:

我会按频率创建一个调度程序脚本,并一一测试您的自定义模块以重现您的问题。就像在我的测试中一样,当我在调度程序脚本中运行winston-papertrail 的测试示例时,我可能会收到与您相同的错误消息。

该模块似乎需要连接到其云端服务器以加载日志模板,该请求可能会被 Azure 移动服务按照定义的出站规则阻止。

如果你需要一些自定义的日志要求,你可以尝试一些其他的模块,如果你想保留你的日志文件,你可以考虑利用 Azure Storage。

还有一种方法可以利用一些第三部分解决方案来监控您的移动服务。例如,New Relic & Windows Azure Mobile Services: End-to-End Monitoring for Your Mobile Apps

【讨论】:

    【解决方案2】:

    不幸的是,上述解决方案都没有解决问题,我像我拥有的​​另一个移动服务一样将 * 添加到 cors 并且每隔几分钟仍然出现错误,将删除移动服务并重新构建它。无论如何感谢您的帮助。

    【讨论】:

      猜你喜欢
      • 2015-03-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多