Skip Navigation

Topics & Messages

The Topics List

Find topics by name or regex, read their message counts, refresh them, keep favourites, and reach every topic action.

Open a cluster's Topics section and every topic on the cluster is listed on the right, with the number of messages in each. Pick a topic there to work with it: its messages, partitions, consumers and settings open in the tabs to the left, and the buttons above them act on it.

The Topics section of Storefront Dev, with a duplicated Storefront Dev (Consumers) tab beside it. The title reads Topics, orders, with a filled star. On the right, the topics list shows thirteen topics with their message counts, from __consumer_offsets and _schemas to shipments; orders and payments have filled stars, and orders is selected. To the left, the Messages tab shows 60 order messages, and above it a row of topic buttons ends with Create Topic. 1 2 3
The Topics section, with orders selected in the topics list.
  1. The topics list.
  2. The selected topic's name and its favourite star. Click the name to copy it.
  3. The topic buttons (see Topic actions).

The list loads when you open the section, and a notification says how many topics were found. Messages is the tab a topic opens on; Topic Overview, Consumers & Settings covers the others. Drag the divider on the left of the list to widen it when names are cut off.

The list belongs to the tab it's in. In a duplicated Topics tab (Duplicate Tab beside the section title, see Duplicating a tab) you can filter differently and select another topic, so two topics of the same cluster can be open side by side.

Finding topics

The topics list close up. At the top: the Filter topics field with a regex icon at its right end, a star button, a three-dot button and a refresh button. Below, the Topic and # Msgs columns: __consumer_offsets 79, _schemas 2, audit-log 10, clickstream 2.4K, customers 20, inventory 40, notifications-email 12, orders 60 (selected), orders-dlq 2, orders-retry 4, payments 25, payments-refunds 7 and shipments 33. Each row starts with a star, filled for orders and payments, and ends with a refresh icon. 1 2 3 4 5 6 7 8
The topics list and its buttons.
  1. Filter topics...
  2. The regex toggle for the filter.
  3. Show only favourites (see Favourites).
  4. More Actions: Edit Favourites and Show Favourites.
  5. Refresh Topics: reloads the whole list.
  6. A topic's favourite star.
  7. # Msgs: the topic's message count (see Message counts).
  8. Refreshes this topic only.

Topics are listed by name, in character order: names starting with _ come before lowercase names, and uppercase names before both. Click Topic or # Msgs to sort by that column (click again to reverse it), for example to find the busiest or emptiest topics. The badge in the list's bottom-left corner (Topics: 13) counts the topics listed. On a cluster with many topics, View ▸ Compact Tables fits more rows on screen (see Compact tables).

Filtering, including regex

Type part of a name in Filter topics... 1 and the list narrows as you type, to topics whose names contain that text, ignoring case: orders keeps orders, orders-dlq and orders-retry. The filter stays when you refresh the list. Clear it with the × at the end of the field.

For anything more precise, click the regex toggle 2 and write a regular expression (Java syntax). It matches anywhere in the name unless you anchor it with ^ and $, and it's case-sensitive (start it with (?i) to ignore case):

The topics list filtered with the regular expression ^(orders|payments), regex switched on. Five topics are left: orders, orders-dlq, orders-retry, payments and payments-refunds. 1 2
^(orders|payments) with regex on: topics whose names start with either word.

A few more examples: -(dlq|retry)$ for dead-letter and retry topics, ^[^_] to hide the internal topics, (?i)^audit for names starting with "audit" in any case. While the expression is incomplete or invalid, no topics match. The filter works the same way as in KafkIO's other tables (see Filtering, including regex).

Internal topics

KafkIO always lists every topic, including those Kafka and its tools create for themselves, such as __consumer_offsets (committed consumer group offsets), __transaction_state (once a transactional producer has used the cluster) and _schemas (Schema Registry's own storage). There's no switch to hide them; filter them out with the regex ^[^_] if they're in the way. They sort to the top because of their leading underscores.

You can open and search them like any other topic. __consumer_offsets has its own deserializer, so its keys and values can be read as offset commits and group metadata (see Deserialization & Formats). Leave changes to these topics to Kafka: clearing, re-creating or deleting one can break consumer groups, transactions or Schema Registry.

Message counts

The # Msgs column adds up, over all of a topic's partitions, the difference between the partition's latest and earliest offsets. Large numbers are shortened (2.4K, and M, B and T for millions, billions and trillions); hover over a count for the exact figure. With hints on, the # Msgs header has an information pop-up saying the same.

Because it comes from offsets, the count is quick to get even for huge topics, but it's an upper bound, not a count of records you can read:

  • Compacted topics (cleanup.policy=compact, such as __consumer_offsets or a changelog topic) keep only the latest record per key. The records compaction removed still count, so the real number can be much lower.
  • Transactional producers write a commit or abort marker to each partition per transaction. Markers take up offsets but aren't messages, so they count too, and aborted messages count although consumers skip them.
  • Messages deleted by retention don't count: the earliest offset moves forward as old segments are removed.

A search shows how many messages it actually read (see Searching Messages). For each partition's offsets, see the topic's Overview tab.

Refreshing

The list doesn't refresh by itself, so counts and topics created or deleted outside KafkIO only show once you refresh:

  • Refresh Topics 5 reloads every topic. Use it to pick up new or deleted topics. On a cluster with thousands of topics it takes a moment, and the list is masked meanwhile.
  • The refresh icon at the end of a row 8, or Refresh on a topic's right-click menu, reloads that topic only: quicker when you're watching one topic's count grow. A notification confirms it (Topic clickstream refreshed).

KafkIO refreshes a topic for you after it changes it: when you produce messages to it, clear it, re-create it or edit its settings. Topics you delete in KafkIO leave the list at once. All the tabs of a cluster share the same topic data, so a refresh in one duplicate updates the others.

Favourites

On a cluster with many topics, mark the few you use most as favourites: they're starred in the list, and one click narrows the list to them. Favourites belong to the cluster (a topic starred on Storefront Dev isn't starred on Storefront Prod (eu-west-1)), are shared by all of its tabs, and are saved with the cluster's settings, so they're still there next time you connect. They're stored by name: delete a favourite topic and create it again, and it's still a favourite.

Adding and removing favourites

Click the star in front of a topic's name 6: filled is a favourite (It's a favourite!), an outline isn't (Add to favourites). Click it again to remove the favourite. The same star follows the topic's name in the section title, and the topic's right-click menu has Add to Favourites and Remove from Favourites (see below).

Showing only favourites

The topics list showing favourites only: the star button at the top is filled, and the list holds inventory, orders and payments, all with filled stars. 1
Only favourites listed: the star button 1 is filled (Showing favourites).

Click the star button above the list (Click to show favourites), or choose More Actions ▸ Show Favourites, to list only your favourites; click it again to list everything. While it's on, a Favourites badge sits beside the topic count in the list's bottom corner, as a reminder that the list is narrowed. It combines with the text filter: type in Filter topics... to search within your favourites. A topic you un-star while only favourites are shown leaves the list straight away.

Editing and clearing favourites

More Actions ▸ Edit Favourites lists the cluster's favourites by name, including any whose topic no longer exists:

The Edit Topic Favourites dialog: You can remove any or all of your topic favourites in this dialog. Under Topic favourites, the topic names inventory, orders and payments, each with a remove link, and a Clear all link below them. 1 2
The Edit Topic Favourites dialog.
  1. remove takes that topic off the list at once.
  2. Clear all removes every favourite of this cluster, after you confirm.

Removals apply immediately (there's nothing to save); Close the dialog when you're done. To add favourites, use the stars in the list.

Topic actions

Everything you can do to a topic acts on the one selected in the list. The buttons above the topic tabs and the topic's right-click menu offer the same actions:

The right-click menu of the inventory topic in the topics list: Refresh; Produce Message(s); Clear Messages, Edit Settings, Re-create Topic, Delete Topic; Copy 'inventory', Copy Summary, Copy All Summaries (13); Add to Favourites, and Remove from Favourites greyed out. 1 2 3 4
A topic's right-click menu.
  1. Refresh: this topic only (see Refreshing).
  2. The topic actions, below.
  3. The copy items (see Copying topic summaries).
  4. Add to Favourites or Remove from Favourites, whichever applies.
ActionWhat it doesCovered in
Produce Message(s)Opens the Produce dialog for the topic. Producing Messages
Clear MessagesDeletes all of the topic's messages, keeping the topic. Not available on compacted topics. Updating, Clearing & Deleting Topics
Edit SettingsPartitions, replication factor and topic properties. Updating, Clearing & Deleting Topics
Re-create TopicDeletes the topic and creates it again, empty, optionally keeping the settings you'd changed. Updating, Clearing & Deleting Topics
Delete TopicDeletes the topic, after you confirm. Updating, Clearing & Deleting Topics
Create Topic (button only)Creates a new topic; it doesn't need a selected topic. Creating Topics

To export a topic's messages to a file, use the arrow beside Search on the Messages tab (see Dumping a Topic to a File).

Copying topic summaries

The copy items on the right-click menu 3 put topic names on the clipboard, for a ticket, a chat or a script:

  • Copy '...' copies the cell you right-clicked, so right-click a name to copy it exactly. (Clicking the topic's name in the section title copies it too.)
  • Copy Summary copies the topic as Column: value lines, starting with Topic: inventory.
  • Copy All Summaries (N) does the same for all N topics listed, one block per topic. Only the topics the filter and the favourites button let through are copied, so narrow the list first to copy a selection.
Warning: in the current version the summary's # Msgs line holds a long internal description of the topic (partitions, offsets and every setting) instead of just the count, which appears at its very end (colValue=40]). To copy names only, use Copy '...', or keep just the Topic: lines of the copied text.