Comments (4)
kafkacat uses the Kafka broker protocol's MetadataRequest to directly query the broker for cluster and topic metadata information, while kafka-topics.sh queries zookeeper for the same information.
Clearly one of those are out of sync in your printouts, and the information retrieved directly from Kafka brokers is usually authoritative (e.g., kafkacat > kafka-topics.sh), unless some of the brokers are acting up.
Could you log in to one of your broker VMs and run kafkacat once for each broker, explicitly providing -b <broker>
for each call (where broker
is the hostname reported in the metadata printout above, e.g.: ip-10-0-246-113.ec2.internal:9092
)?
While this is probably exactly what dsh does, I'd like it to be a bit more explicit to rule out the case where just one of the brokers were queried.
from kcat.
Are you running with unsafe leader election?
from kcat.
Sorry for the delay. Found the problem -- kafka treats the "." character as a wildcard in topic names. And kafkacat will silently create a new topic if you describe it (unlike kafka-topic --describe). You can see in the first example, the topic is "hound-prod.retriever.mutation", and the second it is hound-prod.retriever-mutation".
Suggest making "kafkacat -D -t $topic" not create the topic if it doesn't exist, and instead behave the way "kafka-topics --topic --describe" does :)
from kcat.
The automatic topic creation is actually a broker side feature and config (auto.create.topics.enable=true), to avoid it you can list all topics (leave out the -t ..topic.. switch) and then do output filtering (preferably with JSON / jq)
from kcat.
Related Issues (20)
- How to run a mock Kafka cluster? HOT 3
- Wrong service name with kerberos
- sasl.mechanisms=SCRAM-SHA-512 not taken in account HOT 1
- Build failed for windows 11
- How to create a topic with a specific number of partitions
- bootstrap.sh fails HOT 1
- Single-object encoding deserializer HOT 1
- Kcat with SSL fails HOT 1
- feature request: add `-v` and `--version` flags HOT 3
- logical type support in avro format
- Having bootstrap.servers configured in ~/.config/kcat.conf causes errors output with mock cluster
- Kafkacat would read less records than expected
- Is this project alive or abandoned? HOT 3
- kcat built under Windows does not support the High-level KafkaConsumer mode
- Publish 1.7 for apt HOT 1
- Feature Request: Include version info in the binary file properties, at least for Windows builds.
- bvn13/kat repository not available for Fedora 38
- "-e" doesnt exit as it should. I.e. kafkacat -b kafkahost -o end -e -t mytopic HOT 1
- Hi, same issue...
- support avro
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from kcat.