KafkaPilot - Apache Kafkaデスクトップクライアントを作ってみました
(github.com/pjhun0412)こんにちは。
ここ数か月のあいだ、自分で使うためのApache Kafkaデスクトップクライアント「KafkaPilot」を開発しました。
Kafkaを使っていると、トピックを参照することよりも、その後の作業をより頻繁に行うことになりますが、既存のツールでは複数のプログラムを行き来したり、直接スクリプトを書かなければならないことが少なくありませんでした。
たとえば
特定のメッセージを別のクラスタへ再送信(Replay)
Consumer Group Offsetの変更
テストデータの繰り返し生成
リアルタイム位置データのモニタリング
といった作業です。
そこで、こうした機能を1つのローカルデスクトップアプリケーションで使えるようにしてみました。
主な機能
- Split Paneで2つのトピックを同時に参照して比較
- Offset / Time / Liveモードでメッセージを参照
- 参照したメッセージを別のトピックまたは別のKafka ClusterへReplay
${uuid},${seq},${date}などのDynamic Templateを利用したテストデータ生成- Consumer Groupの参照と安全なOffset Reset
- Schema RegistryベースのAvro対応
- 2つのトピックを同時に比較できるSplit Pane
- リアルタイムProduceおよびInterval Produce
- 座標データのためのMap Viewer
特にMap Viewerは、スマートシティ、BIS、C-ITSプロジェクトを進める中で必要になったため追加した機能です。
Kafkaに入ってくる位置データをすぐに地図上で確認でき、
WGS84
Korea TM(EPSG:5186)
UTM
の座標系に対応しており、車両移動軌跡、Heading、Follow Modeなどを提供します。
すべての機能は、別途サーバーなしでローカルデスクトップアプリケーション上で動作します。
現在MITライセンスで公開しており、Kafkaを使っている方々からのフィードバックや改善意見を歓迎します。
GitHub
https://github.com/pjhun0412/KafkaPilot
ドキュメント
https://github.com/pjhun0412/KafkaPilot/blob/main/README.ko.md
もし使ってみて不便な点や、追加されるとよい機能があれば、気軽にご意見をお願いします。
まだコメントはありません。