Exception exécutant kafka-console-producer.sh (0.8.1.1)
Je suis en train de sortir de la kafka-console-producer.sh. Je tape quelque chose dans la console et appuyez sur entrée et je reçois des tonnes de traces de pile de la console comme ça. Apprécier tous les pointeurs.
La commande pour lancer le producteur est:
./bin/kafka-console-producer.sh --broker-list localhost:2181 --topic test
Puis je tapez une chaîne de caractères et appuyez sur entrée et consultez les rubriques suivantes dans la console.
[2014-11-24 15:27:36,022] ERROR fetching topic metadata for topics [Set(test)] from broker [ArrayBuffer(id:0,host:localhost,port:2181)] failed (kafka.utils.Utils$)
kafka.common.KafkaException: fetching topic metadata for topics [Set(test)] from broker [ArrayBuffer(id:0,host:localhost,port:2181)] failed
at kafka.client.ClientUtils$.fetchTopicMetadata(ClientUtils.scala:67)
at kafka.producer.BrokerPartitionInfo.updateInfo(BrokerPartitionInfo.scala:82)
at kafka.producer.async.DefaultEventHandler$$anonfun$handle$2.apply$mcV$sp(DefaultEventHandler.scala:78)
at kafka.utils.Utils$.swallow(Utils.scala:167)
at kafka.utils.Logging$class.swallowError(Logging.scala:106)
at kafka.utils.Utils$.swallowError(Utils.scala:46)
at kafka.producer.async.DefaultEventHandler.handle(DefaultEventHandler.scala:78)
at kafka.producer.async.ProducerSendThread.tryToHandle(ProducerSendThread.scala:104)
at kafka.producer.async.ProducerSendThread$$anonfun$processEvents$3.apply(ProducerSendThread.scala:87)
at kafka.producer.async.ProducerSendThread$$anonfun$processEvents$3.apply(ProducerSendThread.scala:67)
at scala.collection.immutable.Stream.foreach(Stream.scala:547)
at kafka.producer.async.ProducerSendThread.processEvents(ProducerSendThread.scala:66)
at kafka.producer.async.ProducerSendThread.run(ProducerSendThread.scala:44)
Caused by: java.io.EOFException: Received -1 when reading from channel, socket has likely been closed.
at kafka.utils.Utils$.read(Utils.scala:376)
at kafka.network.BoundedByteBufferReceive.readFrom(BoundedByteBufferReceive.scala:54)
at kafka.network.Receive$class.readCompletely(Transmission.scala:56)
at kafka.network.BoundedByteBufferReceive.readCompletely(BoundedByteBufferReceive.scala:29)
at kafka.network.BlockingChannel.receive(BlockingChannel.scala:100)
at kafka.producer.SyncProducer.liftedTree1$1(SyncProducer.scala:74)
at kafka.producer.SyncProducer.kafka$producer$SyncProducer$$doSend(SyncProducer.scala:71)
at kafka.producer.SyncProducer.send(SyncProducer.scala:112)
at kafka.client.ClientUtils$.fetchTopicMetadata(ClientUtils.scala:53)
... 12 more
Je vois un avertissement sur la gardienne de la console ainsi:
WARN Exception causing close of session 0x0 due to java.io.EOFException (org.apache.zookeeper.server.NIOServerCnxn)
J'ai utilisé les éléments suivants pour l'installation de mon sujet:
./bin/kafka-topics.sh --create --zookeeper localhost:2181 --partitions 1 --replication-factor 1 --topic test
et je suis capable de liste de mon sujet:
./bin/kafka-topics.sh --list --zookeeper localhost:2181
source d'informationauteur Raylite3
Vous devez vous connecter pour publier un commentaire.
Votre
broker-list
argument est de pointage de Gardienne d'animaux à la place de la courtier en.L'utilisation correcte serait:
en supposant que votre courtier s'exécute sur le port
9092
(par défaut).Vous pouvez vous référer ici pour plus d'informations (votre problème est décrit dans
Step 4: Send some messages
)C'est parce que vous êtes à partir de votre consommation dans un mauvais sens. Si vous cochez la la documentation officiellevous pouvez voir que vous avez à:
commencer Zookeper
commencer Kafka
créer un topic
commencer à produire des messages d'un sujet
Notez la différence: vous vous connectez à zookeper (port 2181) vous devez vous connecter à un courtier (port 9092)