我有一个使用 node-rdkafka 1.0.3 的 Bluemix Node.js (6.1.0( 应用程序。它似乎工作正常,但是有大量的错误事件,例如Error: Local: Broker Transport Failure
或Error: 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
标记。
我想知道我是否应该担心这些错误,以及是否有办法消除它们。 谢谢!
你可能正在打 https://github.com/edenhill/librdkafka/issues/1218。
在许多情况下,正如您所注意到的,这些错误是无害的。库节点 rdkafka 基于 librdkafka,始终连接到集群中的所有代理。应用程序不与之交互的代理将在一段时间后关闭空闲连接,从而导致客户端中出现这些错误消息。
不幸的是,我们目前没有推荐的方法来消除它们。我们目前正在研究一种潜在的解决方案,至少可以降低它们的比率,并可能摆脱它们。
更新:
使用最新版本的 node-rdkafka (>2.2(,您可以通过在创建客户端时设置以下属性来消除所有干扰日志:
'broker.version.fallback': '0.10.2.1',
'log.connection.close' : false