使用Kafka Connect将消息从Kafka主题保存到MongoDB时遇到BSON转换器问题

时间:2019-08-22 06:16:37

标签: mongodb apache-kafka apache-kafka-connect confluent

我正在使用Confluent Kafka社区版本。我正在尝试使用Kafka Connect将数据从Kafka主题保存到MongoDB中。我已经安装了配置Confluent Kafka和MongoDB的CentOS VM。我已经下载了MongoDB连接器jar(来自-https://github.com/RADAR-base/MongoDb-Sink-Connector/releases)并创建了MongoDB接收器属性文件(来自-https://github.com/RADAR-base/MongoDb-Sink-Connector)。在运行Kafka Connect时,出现BSON提示错误。

在/ share / mongoDbSink / plugins中放置了MongoDB连接器 创建的MongoDB Sink属性文件。

属性文件的内容如下。

# Kafka Consumer Configuration
name=kafka-connector-mongo-sink

# Kafka connector configuration
connector.class=org.radarcns.connect.mongodb.MongoDbSinkConnector
tasks.max=1

# Topic that will be consumed
topics=mongotest

# MongoDB Server
mongo.host=localhost
mongo.port=27017

# MongoDB Configuration
mongo.username=root
mongo.password=Loginpc@01
mongo.database=local

# Factory class to do the actual record  
record.converter.class=org.radarcns.connect.mongodb.serialization.RecordConverterFactory

Kafka Connect命令

sudo ./bin/connect-standalone  <Kafka_home>/etc/schema-registry/connect-avro-standalone.properties <Kafka_home>/mongoDB_property/mongo_sink.properties

期望Kafka connect应该毫无例外地运行,以便我可以在Console生产者中推送JSON数据,并且数据将保存在MngoDB中。

但是在运行Kafka Connect时出现以下错误。

ERROR WorkerSinkTask{id=kafka-connector-mongo-sink-0} Task threw an uncaught and unrecoverable exception (org.apache.kafka.connect.runtime.WorkerTask:179)
java.lang.NoClassDefFoundError: org/bson/conversions/Bson

Caused by: java.lang.ClassNotFoundException: org.bson.conversions.Bson

0 个答案:

没有答案