Skip to content

Limitations

Akema is built to read Kafka and help you understand what’s in it. This page lists what it doesn’t do, so you can tell before you install whether it fits. Each item links to the guide with more detail.

These are choices, not gaps. They’re what makes Akema safe to point at a production cluster.

  • Akema only reads. It never produces messages, replays them, creates or changes topics, or commits consumer offsets. See Connect to Kafka.
  • It doesn’t show consumer lag. Akema reads with its own consumer and never looks at your applications’ committed offsets, so it can’t tell you how far behind a consumer group is.
  • It keeps a window, not a history. Messages live in memory only, up to the buffer sizes you set, and the oldest make room for new ones. Nothing is written to disk, so after a restart Akema reads the messages again from Kafka. Explore loads the newest 10,000 messages per source by default, and up to 500,000 across all sources. See Settings.
  • Traps don’t send alerts. A match is tagged, counted and shown in Akema. Nothing is sent by email, chat or webhook.
  • Sign-in to Kafka works with TLS, mutual TLS, and SASL PLAIN, SCRAM-SHA-256 or SCRAM-SHA-512. OAUTHBEARER, Kerberos (GSSAPI) and AWS IAM aren’t supported, so Akema can’t connect to MSK Serverless, which accepts only IAM. See Connect to Kafka.
  • Akema connects from the machine it runs on. That machine has to reach every broker at its advertised address, not only the bootstrap address. See Network access.
  • Akema decodes JSON, text, Avro and Protobuf values. It doesn’t support JSON Schema: a value written with Confluent’s JSON Schema serializer starts with a schema ID, so it isn’t read as JSON and value_json is null. With a Schema Registry set up, those messages show a decode error.
  • A Protobuf schema has to be a single file. It can use Google’s well-known types, but not import other .proto files, whether you upload it or it comes from Schema Registry.
  • Raw Protobuf decodes as the first message type in the schema. Messages written with Confluent’s serializer say which type they are, so this only affects Wire Raw. See Decode Avro and Protobuf.
  • Keys aren’t decoded. A text key is shown as it is. A key that isn’t text, such as an Avro key or an 8-byte number, shows as (binary), and a message with no key shows (null). Traps see the same text, so key == "(null)" finds messages without a key.
  • Header values are read as text. A header whose value isn’t text shows as empty.
  • Integers above 2⁵³ (about 9 quadrillion) lose precision in traps, so two long IDs can look equal. Match them as text instead. See Traps and CEL.
  • Some payload fields get different column names in SQL views. A field called value is value_2, because value is the raw message. When two fields share a name, such as before.email and after.email, one gets a plain column and the other a longer name. You can always read a field from the payload instead, with payload->>'$.after.email'. See SQL, playbooks and enrichment.
  • Explore runs in your browser tab, with up to 1,536 MB of memory. On a very large window, load a sample. See Settings.
  • Sign-in is basic, and off until you turn it on. You can require one shared passphrase, or a name and PIN for each person with an editor or viewer role. There’s no single sign-on (SSO, LDAP or OAuth), no permissions for each workspace, and no audit log. People are added from the command line, and changes need a restart. See Sign-in and sharing.
  • Akema serves plain HTTP by default. HTTPS is optional and off until you turn it on. Akema can make a local certificate for localhost and private IP addresses, or use one you provide for a host name. Without it, passphrases, PINs and messages travel unencrypted, so share Akema only on a network you trust, or through an SSH tunnel. See Serve over HTTPS.
  • Everyone shares one bench. Sources, traps, settings and the Explore canvas are the same for every browser, and only one window can change them at a time. For separate benches, run separate copies of Akema. See One editor at a time.
  • Linux and Docker are fully supported. Linux needs glibc 2.28 or newer; on older systems, use the Docker image.
  • macOS and Windows builds are in beta, and the Windows build isn’t signed yet. See Install Akema.

Something here stopping you? Tell us at feedback@akema.io.