如果启用了stats,则使用者停止-node rdkafka

fdx2calv  于 2021-06-04  发布在  Kafka
关注(0)|答案(2)|浏览(490)

我正在使用 node-rdkafka 消费Kafka的信息。使用者进程退出,如果 statistics.interval.ms 已设置。
代码如下:

const { KafkaConsumer } = require('node-rdkafka')
const consumer = new KafkaConsumer(
    {
        'group.id': 'kafka',
        'metadata.broker.list': 'localhost:9092',
        'statistics.interval.ms': 5000,
    },
    {},
)
consumer
    .on('ready', () => {
        consumer.subscribe(['test1'])
        setInterval(() => {
            consumer.consume(1)
        }, 1000)
    })
    .on('data', (data) => {
        console.log('Message found!  Contents below.')
        console.log(data.value.toString())
    })
    .on('error', (e) => console.log(e))

此代码只使用一条消息,然后退出。我查过了 process.on 事件,但不会引发错误。如果我移除 'statistics.interval.ms': 5000 然后一切正常

vlf7wbxs

vlf7wbxs1#

consumer
    .on('ready', () => {
        consumer.subscribe(['test1'])
            consumer.consume()
    })
    .on('data', (data) => {
        console.log('Message found!  Contents below.')
        console.log(data.value.toString())
    })
    .on('error', (e) => console.log(e))

试试这个,如果对你有用就告诉我。

6ss1mwsb

6ss1mwsb2#

这是 windows 相关问题。 Linux 效果很好。

相关问题