2016-07-13 100 views
0

我正在使用Apache Kafka。我使用KafkaProducer来生成数据,使用KafkaConsumer来消费数据。我的配置数据是:如何查看Apache Kafka生成的完整TCP数据包?

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

消费者配置是相同的。我如何查看生产者和消费者正在发送和接收的TCP包的详细信息?

+1

更多细节还没有见过这样的卡夫卡内置工具。你可能需要tcpdump? – NangSaigon

回答

1

你可以使用tshark与Kafka解剖器已经可用。

sudo apt-get update 
sudo apt-get install tshark 
sudo tshark -V -i lo -o 'kafka.tcp.port:9092' -d tcp.port=9092,kafka -f 'dst port 9092' 

这里Using the kafka dissector in wireshark/tshark 1.12

+0

它对于我来说并不适用于来自Ubuntu存储库的默认版本的tshark。我必须首先添加以下储存库:'sudo add-apt-repository ppa:wireshark-dev/stable' – spektom