kaskade is a terminal user interface for kafka
Project description
Kaskade
Kaskade is a text user interface (TUI) for Apache Kafka, built with Textual. It includes features like:
- Admin:
- List topics, partitions, groups and group members.
- Topic information like lag, replicas and records count.
- Create, edit and delete topics.
- Filter topics by name.
- Consumer:
- Json, string, integer, long, float, boolean and double deserialization.
- Filter by key, value, header and/or partition.
- Schema Registry support with avro.
Screenshots
Installation
Install with pipx
:
pipx install kaskade
pipx
will installkaskade
andkskd
aliases.
Upgrade with pipx
:
pipx upgrade kaskade
How to install pipx for your OS at: pipx Installation.
Running kaskade
Help:
kaskade --help
kaskade admin --help
kaskade consumer --help
Admin view:
kaskade admin -b localhost:9092
Consumer view:
kaskade consumer -b localhost:9092 -t my-topic
Running with docker:
docker run --rm -it --network my-networtk sauljabin/kaskade:latest admin -b my-kafka:9092
docker run --rm -it --network my-networtk sauljabin/kaskade:latest consumer -b my-kafka:9092 -t my-topic
Configuration examples
Multiple bootstrap servers:
kaskade admin -b broker1:9092,broker2:9092
Consume and deserialize:
kaskade consumer -b localhost:9092 -t my-topic -k json -v json
Consuming from the beginning:
kaskade consumer -b localhost:9092 -t my-topic -x auto.offset.reset=earliest
Schema registry simple connection and avro deserialization:
kaskade consumer -b localhost:9092 -s url=http://localhost:8081 -t my-topic -k avro -v avro
More Schema Registry configurations at: SchemaRegistryClient.
librdkafka clients do not currently support AVRO Unions in (de)serialization, more at: Limitations for librdkafka clients.
SSL encryption example:
kaskade admin -b ${BOOTSTRAP_SERVERS} -x security.protocol=SSL
For more information about SSL encryption and SSL authentication go to the
librdkafka
official page: Configure librdkafka client.
Confluent cloud admin:
kaskade admin -b ${BOOTSTRAP_SERVERS} \
-x security.protocol=SASL_SSL \
-x sasl.mechanism=PLAIN \
-x sasl.username=${CLUSTER_API_KEY} \
-x sasl.password=${CLUSTER_API_SECRET}
Confluent cloud consumer:
kaskade consumer -b ${BOOTSTRAP_SERVERS} \
-x security.protocol=SASL_SSL \
-x sasl.mechanism=PLAIN \
-x sasl.username=${CLUSTER_API_KEY} \
-x sasl.password=${CLUSTER_API_SECRET} \
-s url=${SCHEMA_REGISTRY_URL} \
-s basic.auth.user.info=${SR_API_KEY}:${SR_API_SECRET} \
-t my-topic \
-k string \
-v avro
More about confluent cloud configuration at: Kafka Client Quick Start for Confluent Cloud.
Development
For development instructions see DEVELOPMENT.md.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file kaskade-2.1.3.tar.gz
.
File metadata
- Download URL: kaskade-2.1.3.tar.gz
- Upload date:
- Size: 18.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.0 CPython/3.12.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2c3b4c87710f1586a6f68d283db6ae2ed0f13eb520ee6c20755c4addab8d9405 |
|
MD5 | e88e11bd12085c0e43c825571a2e6569 |
|
BLAKE2b-256 | 794a3f748f9bf4f6c17c2e83ef9a2f9a5c15f6b9fb973d5e268eb30be6c74078 |
Provenance
File details
Details for the file kaskade-2.1.3-py3-none-any.whl
.
File metadata
- Download URL: kaskade-2.1.3-py3-none-any.whl
- Upload date:
- Size: 20.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.0 CPython/3.12.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c22edc06e5c3bc77a89f78c61276a188b2be2299ca8e5b483f6308a28f1d7ff0 |
|
MD5 | 7a5a3953b15de950a68f15115d62453d |
|
BLAKE2b-256 | ca22835a915ef9e0ff39a2b648376e6f602551d3dcd42d4b0638f1dbcf19eb83 |