2016-07-13 99 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