簡體   English   中英

我正在使用Kafka Producer Api將文件中的消息寫入kafka主題,但是kafka主題的日志顯示為空?

[英]I am using Kafka Producer Api to write messages from a file into kafka topic, but the logs of kafka topic is showing empty?

我正在使用下面的Producer API代碼將消息寫入Kafka主題,但無法將消息寫入主題:

import java.util.Properties
import com.typesafe.config.ConfigFactory
import org.apache.kafka.clients.producer.{KafkaProducer, ProducerConfig, ProducerRecord}
import scala.io.Source

object KafkaProducerDemo {

    def main(args: Array[String]): Unit = {

        val props = new Properties()
        props.put(ProducerConfig.BOOTSTRAP_SERVERS_CONFIG, "localhost:9092")
        props.put(ProducerConfig.CLIENT_ID_CONFIG, "KafkaProducerDemo")
        props.put(ProducerConfig.KEY_SERIALIZER_CLASS_CONFIG, "org.apache.kafka.common.serialization.StringSerializer")
        props.put(ProducerConfig.VALUE_SERIALIZER_CLASS_CONFIG, "org.apache.kafka.common.serialization.StringSerializer")

        val producer = new KafkaProducer[Nothing, String](props)


        val logMessages = Source.
          fromFile("/opt/gen_logs/logs/access.log").
          getLines.
          toList

        logMessages.foreach(message => {
          val record = new ProducerRecord("retail-multi", message)
          producer.send(record)
        })
    }
}

基於您在注釋中提到的錯誤(java.lang.ArrayIndexOutOfBoundsException:18),我認為您的客戶端庫版本和代理版本之間不匹配。 客戶端庫應為<代理(除非客戶端庫支持動態api版本檢查)。

因此,請仔細檢查您要連接的代理版本,然后再仔細檢查您的客戶端庫版本。 一旦它們匹配或兼容,您就應該做好了!

嗨,我這可能是因為某些kafka版本不匹配。 我已經重新安裝了kafka和sbt。 現在它開始工作正常。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM