kafka js - неверный пароль для аутентификации SASL не вызвал ошибку - PullRequest
0 голосов
/ 04 мая 2020

Это мой продюсер, использующий kafkajs. Когда я вводю неправильное имя пользователя в options.username, я вижу сообщение Connected. Как я могу обработать ошибки соединения с kafkajs?

const { Kafka, logLevel } = require('kafkajs')

async function kafkaProducer(options) {
    const kafka = new Kafka({
        brokers: [options.bootstrapServer],
        clientId: options.clientId,
        ssl: {
            rejectUnauthorized: false,
            ca: [fs.readFileSync(options.caCertPath, 'utf-8')]
        },
        sasl: {
            mechanism: options.saslMechanism, // PLAIN
            username: options.username,
            password: options.password
        },
        requestTimeout: 2000,
        retry: {
            retries: 1
        },
        logLevel: logLevel.ERROR
    })
    //
    const producer = kafka.producer()
    try {
        await producer.connect()
        console.log('Connected')
    } catch(e) {
        throw new Error(e)
    }
}

1 Ответ

0 голосов
/ 04 мая 2020

Kafka JS выдаст ошибку на connect, если аутентификация не удалась. См. Этот тест, например .

Весьма вероятно, что вы неправильно настроили аутентификацию на стороне брокера. См. Документацию для получения информации о настройке SASL на брокере.

...