Skip to content

Explore messages and configurations in your Apache Kafka cluster

License

Notifications You must be signed in to change notification settings

holgeradam/kafka-owl

 
 

Repository files navigation

Kafka Owl

License Go Report Card GitHub release (latest SemVer) Docker Repository on Quay

Kafka Owl is a Web UI which helps you to explore messages in your cluster's topics in the most comfortable way.

preview

Features

  • Supports Kafka 1.0.0+
  • Fetch messages from Kafka Topics so that they can be comfortably previewed (JSON, XML, Text, Binary)
  • Show Topic configuration with highlighted rows which have been modified
  • List all Topics' Low & High Watermarks
  • Performant & lightweight (e. g. fetching messages from one or across multiple partitions takes a few milliseconds)
  • Consumer group overview along with their members, member state & partition assignments

Roadmap

  • Add avro support for deserializing messages (key+value)
  • Authentication layer with SSO support
  • Editing features such as editing consumer group offsets
  • ACL support for listing/editing/creating/deleting topics, consumer groups, ...

Install

Helm chart

Kubernetes users may want to use the Helm chart to deploy Kafka owl: https:/kafka-owl/helm-chart

Arguments

Argument Description Default
--server.graceful-shutdown-timeout Timeout for graceful shutdowns 30s
--server.http.listen-port HTTP server listen port 80
--server.http.read-timeout Read timeout for HTTP server 30s
--server.http.write-timeout Write timeout for HTTP server 30s
--server.http.idle-timeout Idle timeout for HTTP server 120s
--logging.level Log granularity (debug, info, warn, error, fatal, panic) info
--logging.print-access-logs Whether or not to print access log for each HTTP invocation false
--kafka.brokers Array of broker addresses, delimited by comma (e. g. "kafka-1:9092, kafka-2:9092") (No default)
--kafka.client-id ClientID to identify the consumer "kafka-owl"
--kafka.sasl.enabled Bool to enable/disable SASL authentication (only SASL_PLAINTEXT is supported) false
--kafka.sasl.use-handshake Whether or not to send the Kafka SASL handshake first true
--kafka.sasl.username SASL Username (No default)
--kafka.sasl.password SASL Password (No default)
--kafka.tls.enabled Whether or not to use TLS when connecting to the broker false
--kafka.tls.ca-file-path Path to the TLS CA file (No default)
--kafka.tls.key-file-path Path to the TLS key file (No default)
--kafka.tls.cert-file-path Path to the TLS cert file (No default)
--kafka.tls.insecure-skip-verify If true, TLS accepts any certificate presented by the server and any host name in that certificate. false
--kafka.tls.passphrase Passphrase to decrypt the TLS key (leave empty for unencrypted key files) (No default)
--owl.topics.blacklist Topics blacklist (comma separated) to configure access restrictions (No default)

About

Explore messages and configurations in your Apache Kafka cluster

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 62.7%
  • Go 33.2%
  • CSS 2.4%
  • Other 1.7%