The library has a built-in logger (defaults to console) and supports custom loggers.
Using the Built-in Logger
const { logLevel } = require('@confluentinc/kafka-javascript').KafkaJS;
const libraryLogger = producer.logger();
libraryLogger.info('Message');
libraryLogger.setLogLevel(logLevel.INFO);
Debugging Library Internals
To see internal librdkafka logs, set the debug property in your configuration to a comma-separated list of components or all. Note: This must be set before connecting, as it cannot be changed on the fly.
Custom Logger
Provide a custom logger via the kafkaJS.logger key in the configuration. The logger must implement setLogLevel(logLevel), info(message, extra), error(message, extra), warn(message, extra), and debug(message, extra).
class MyLogger {
constructor() {}
setLogLevel(logLevel) {}
info(message, extra) {}
error(message, extra) {}
warn(message, extra) {}
debug(message, extra) {}
}
const producer = new Kafka().producer({
'bootstrap.servers': '<fill>',
'debug': 'all',
'kafkaJS': {
'logger': new MyLogger(),
}
});