haraldki / kafka-watcher Goto Github PK
View Code? Open in Web Editor NEWSimple web application to monitor Kafka logs
License: Apache License 2.0
Simple web application to monitor Kafka logs
License: Apache License 2.0
The locale in a browser seems to be a bit of a guess and is hard to change for the user at least in firefox. Therefore we should provide a simple locale selector on the UI and store the result in a cookie.
The locale is currently used for thousands separator. Need to decide whether I want to use it for the date too.
If nothing is selected, we won't force anything into a cookie but just go along with whatever HttpServletRequest.getLocale() spits out.
There should be a timeout within a few seconds notifying the user that Kafka can not be reached when no Kafka can be contacted.
Not to forget to clearly state in the error message which host:port we were trying to contact.
Currently the click on topics or just the default page hangs in this case.
On the offsets URL, collect windowed stats in particular of the consumer lags. Might be just simple snapshots every N seconds which can be paged through or displayed as a simple graph.
If the page is full, at least with FF, the footer scrolls up when the page is scrolled.
Hard to tell a million from ten million without digit counting. The output should use a thousand's separator. Wonder whether there is a good way to get the locale from the browser.
The QueueWatcher reuses the same KafkaConsumer on each request. As long as only one person is using the UI this is nearly never a problem. But this is plain wrong for a web application and needs to be changed. Need to decide whether to use ThreadLocal or whether to construct a new consumer each time. On my laptop this takes 500ms. Since this UI will likely not expect several hits per second, creating a new consumer each time should be fine. (ThreadLocal has no means to register a cleanup when the thread ends!)
Want to have a summary row totalling the counts over all partitions of a topic.
To be sure which Kafka we are looking at.
In case the unpacked zip was renamed to not contain the version anymore, the directory should contain a version-x.y.z.txt with the build time inside.
The UI should contain the version too.
On each page show date/time when it was retrieved.
Implemented a half-baked recovery, but this like works only if Kafka is initially not up and comes up while the watcher is already running. If Kafka disappears and reappears again, the counts might get messed up.
With several 100k of consumer-offsets, it takes a while for the Offsets viewer to get to the current state. Three things to do:
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.