我看到使用node-rdkafka的错误,但似乎工作正常

时间:2017-08-21 18:42:04

标签: ibm-cloud message-hub

我有一个使用node-rdkafka 1.0.3的Bluemix Node.js(6.1.0)应用程序。它似乎工作正常,但有大量的错误事件,如Error: Local: Broker Transport FailureError: Local: Authentication failure。 我设定的制作人选项是:

var producer_opts = {
  "metadata.broker.list":env.messagehub.brokers,
  "security.protocol":"sasl_ssl",
  "ssl.ca.location":env.messagehub.calocation,
  "sasl.mechanisms":"PLAIN",
  "sasl.username":env.messagehub.user,
  "sasl.password":env.messagehub.password,
  "api.version.request":true,
  "socket.timeout.ms": 10000,
  "dr_msg_cb":true
};

消费者具有类似的设置加上group.id标记。

我想知道我是否应该担心这些错误,以及是否有办法消除它们。 谢谢!

1 个答案:

答案 0 :(得分:0)

你可能正在点击https://github.com/edenhill/librdkafka/issues/1218

在许多情况下,正如您所注意到的,这些错误是无害的。库node-rdkafka基于librdkafka,始终连接到集群中的所有代理。您的应用程序不与之交互的代理将在一段时间后关闭空闲连接,从而导致客户端出现这些错误消息。

很遗憾,目前我们还没有推荐的方法来消除它们。我们目前正在研究一种潜在的解决方案,至少可以降低它们的速度,也许可以摆脱它们。

<强>更新

使用node-rdkafka(&gt; 2.2)的最新版本,您可以在创建客户端时通过设置以下属性来消除所有嘈杂的日志:

'broker.version.fallback': '0.10.2.1',
'log.connection.close' : false