kafkajs - Неверный пароль для аутентификации SASL не вызывал ошибку

Это мой продюсер, использующий 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 ответ

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

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

Другие вопросы по тегам