Skip Navigation

Getting Started

The KafkIO Workspace

Menus, panes, cluster tabs and the conventions every screen shares.

KafkIO keeps everything in one window: your saved clusters on the left, and a tab for each connected cluster on the right, where you can open as many views of the same cluster as you need. This page is a tour of that window, and of the conventions (filters, menus, copying, detail panes) that every screen shares, so the rest of the docs can skip them.

Main window layout

The KafkIO main window. At the top, the File, Cluster, Tools, View and Help menus, and a toolbar with Add Cluster and cluster buttons on the left and donate, website and background-task icons on the right. On the left, the Kafka Clusters pane lists Storefront Dev (green) and Storefront Staging (amber), both connected and expanded into their sections, with the Health Log pane below it showing timed status lines for both clusters. On the right, four tabs: Storefront Dev, Storefront Dev (Consumers), Storefront Staging and Storefront Dev (Topics). The Storefront Dev tab shows the Topics section with the orders topic's messages. The status bar at the bottom reads Storefront Dev: connected, with memory use on the right. 1 2 3 4 5 6 7
Two clusters connected, with Storefront Dev open in three tabs.
  1. The main menu. On macOS it's in the system menu bar at the top of the screen instead.
  2. The toolbar: cluster buttons on the left, the background task indicator on the right.
  3. The Kafka Clusters pane: your saved clusters, and the sections of each connected one.
  4. The Health Log pane: a periodic check of every connected cluster.
  5. A cluster tab, showing whichever section you picked in the Kafka Clusters pane (here Topics).
  6. A duplicated tab of the same cluster, which stays on one section (here Consumers).
  7. The status bar.

The divider between the side panes and the tabs can be dragged; KafkIO remembers its position, along with which side panes are showing and in what order.

The main menu

Most menu items act on the cluster selected in the Kafka Clusters pane, and are greyed out when they don't apply to it (Connect on a cluster that's already connected, for example).

File

ItemWhat it does
Add ClusterOpens the Cluster Properties dialog for a new cluster (see Managing Cluster Configurations).
PreferencesOpens KafkIO Preferences (see Preferences).
Quit (Ctrl+Q)Closes KafkIO. If background work is still running (a topic dump, for example), it asks first: Waiting for background tasks to finish. Quit anyway?

Cluster

ItemWhat it does
ConnectConnects to the selected cluster.
DisconnectDisconnects from it, after a confirmation, and closes its tabs. Anything KafkIO had fetched (search results, for example) is discarded.
Edit ClusterOpens its settings. Only available while the cluster is disconnected.
Duplicate ClusterAfter a confirmation, saves a copy of its settings as a new cluster called NAME (copy): a quick start for another environment with similar settings, which you then rename and adjust with Edit Cluster.
Delete ClusterRemoves the cluster's saved settings from KafkIO, after a confirmation. Nothing changes on the cluster itself.

Tools

ItemWhat it does
Show Config InTerminal or File Browser opens the folder holding your cluster configurations; Text Editor opens the configuration file (clusters.json).
Show Logs InThe same, for KafkIO's log files. See Config & Log Files.
JKS ConverterConverts certificates and keys into Java keystores (see JKS Converter).
Network ToolChecks that a host and port can be reached (see Network Tool).
Sample Docker ComposeA ready-made Docker Compose file for a local Kafka (see Sample Docker Compose).

View

ItemWhat it does
Health Log (Alt+3)Shows or hides the Health Log pane.
Kafka Clusters (Alt+4)Shows or hides the Kafka Clusters pane.
Compact TablesSwitches every table to tighter rows.

Help

ItemWhat it does
Online help (F1)Opens the support page on kafkio.com in your browser.
Donate to KafkIOOpens the donation page. KafkIO is free; donations keep it going.
Check for UpdatesChecks for a newer version now (see Installation & Updates).
Feedback / bug?Report a problem or ask for a feature (see Getting Help).
KafkIO ResourcesWebsite, Twitter and View Release Notes (the release notes for your version) open in your browser.
View Event LogEvery notification and error since KafkIO started (see below).
Splash ScreenShows the start-up splash screen again.
About KafkIOVersion and build details.

The toolbar

The buttons on the left of the toolbar repeat the Cluster menu, for the cluster selected in the Kafka Clusters pane:

The left end of the toolbar: an Add Cluster button, then icon buttons for edit (a pencil), duplicate, delete (a bin), connect and disconnect. 1 2 3 4 5 6
The cluster buttons. Edit and Connect are greyed out here because the selected cluster is connected.
  1. Add Cluster
  2. Edit Cluster (only while disconnected)
  3. Duplicate Cluster
  4. Delete Cluster
  5. Connect
  6. Disconnect

At the right end are two shortcuts and the background task indicator:

The right end of the toolbar: a donate icon (a hand holding a heart), the KafkIO logo, and a round progress indicator showing a tick. 7 8 9
Donate, website and background tasks.
  1. Donate to KafkIO opens the donation page.
  2. Opens KafkIO's website.
  3. The background task indicator: a tick when nothing is running, progress while something is. Click it to see what's running (see Background tasks).

The Kafka Clusters pane

The pane lists every cluster you've saved, in the cluster's colour. A connected cluster expands into its sections: Overview, Brokers, Topics, Consumers, Schema Registry, ACL, Kafka Connect and ksqlDB. Sections for services you haven't configured for that cluster (Schema Registry, Kafka Connect, ksqlDB) are greyed out, and so is ACL when your credentials aren't allowed to view ACLs. Click a section to open it in the cluster's tab.

The Kafka Clusters pane with its header buttons and a Filter clusters field. The Storefront Dev row has a three-dot button and a green signal icon; its Cluster Actions menu is open, listing Connect (greyed), Disconnect, Edit Cluster (greyed), Duplicate Cluster, Delete Cluster, Move Up (greyed) and Move Down. 1 2 3 4 5 6
The Cluster Actions menu of a connected cluster.
  1. Filter clusters...: type part of a name to narrow the list. The icon at its right end switches to regular expressions.
  2. Cluster Actions opens the cluster's menu. Right-clicking the cluster opens the same menu.
  3. The connection icon: bars when connected, crossed out when not. Click it to connect or disconnect.
  4. The menu: Connect, Disconnect, Edit Cluster, Duplicate Cluster and Delete Cluster, as in the Cluster menu.
  5. Move Up and Move Down reorder the list.
  6. The pane's own buttons: move it above or below the Health Log, or hide it.

Connecting from the pane

Besides the menu and the toolbar, you can connect or disconnect a cluster by double-clicking it, clicking its connection icon 3, or selecting it and pressing → (connect) or ← (disconnect). While KafkIO connects, it covers the window with a progress message (Testing connection..., Getting topic and broker info...) and a Cancel link. Disconnecting always asks for confirmation, because whatever KafkIO has fetched for that cluster is discarded.

Reordering clusters

Drag a cluster up or down the list, or use 5 Move Up and Move Down. The order is saved with your cluster configurations, so it's the same next time. Grouping environments together (all the Dev clusters, then Staging, then Prod) makes the list easier to scan than an alphabetical one.

Showing and hiding the pane

The pane's minus button 6, View ▸ Kafka Clusters or Alt+4 hides it to give the tabs the full width; the same menu item or shortcut brings it back. If you hide both side panes, KafkIO points at the View menu to show where they went.

Cluster tabs

A connected cluster gets a tab the first time you open one of its sections; picking another section in the Kafka Clusters pane switches that tab to it, and picking another cluster's section switches to that cluster's tab. Selecting a tab also selects its cluster, so the toolbar, the Cluster menu and the status bar follow the tab you're looking at. Each tab keeps its own state: leave a search's results on the Topics section of one cluster, look at another cluster, and they're still there when you come back.

Duplicating a tab

A cluster's main tab shows one section at a time. To have two at once (watch a consumer group's lag while you produce test messages, compare two topics, or keep a long search open while you look elsewhere), duplicate the tab:

The tab bar with Storefront Dev, Storefront Dev (Consumers), Storefront Staging and Storefront Dev (Topics). Below it, the Topics section title has a small duplicate icon beside it. The right-click menu of the Storefront Dev (Consumers) tab is open: Disconnect, Close Duplicate, Close All Cluster Duplicates, Close Other Cluster Duplicates and Duplicate Tab. 1 2 3 4 5
Storefront Dev's main tab and two duplicates, with a duplicate's tab menu open.
  1. The cluster's main tab, with the Kafka logo in the cluster's colour. It follows your choices in the Kafka Clusters pane.
  2. A duplicate, named after the cluster and its section and marked with the duplicate icon in the cluster's colour.
  3. Another duplicate of the same cluster. Duplicates open at the end of the tab bar.
  4. Duplicate Tab, beside every section's title, opens that section in a new duplicate.
  5. The tab's right-click menu (see below).

A duplicate stays on the section it was opened with: clicking sections in the Kafka Clusters pane changes the main tab, not the duplicates. Inside a duplicate everything works as in the main tab, independently of it, so in a duplicated Topics tab you can select a different topic and run a different search.

Right-click any of the cluster's tabs for:

  • Disconnect: disconnects the cluster (all of its tabs).
  • Close Duplicate: closes this duplicate (only on duplicates).
  • Close All Cluster Duplicates: closes every duplicate of this cluster, leaving the main tab (available when there are at least two).
  • Close Other Cluster Duplicates: closes the cluster's other duplicates, keeping this one (only on a duplicate).
  • Duplicate Tab: opens another duplicate of the section this tab shows.

Closing tabs

The selected tab has a close button (×). Closing a duplicate asks you to confirm, because its results are lost. Closing a cluster's main tab disconnects the cluster, so it asks the same question as Disconnect.

Cluster colours

A cluster's colour (set on the Kafka General tab of its settings, see General Connection Settings) appears on its row in the Kafka Clusters pane, on the icons of its tabs, in the status bar, and as a small triangle in the top-left corner of windows opened for that cluster (hover it to see the cluster's name). Colour clusters by environment, for example green for development, amber for staging and red for production, and you'll rarely mistake one for another, even with several open side by side. A cluster without a colour uses the default icon colour.

The Health Log

The Health Log checks every connected cluster in the background, every 30 seconds (and once when it connects), and writes down what it found:

The Health Log pane: blocks of timestamped lines for Storefront Staging and Storefront Dev, each with Status: online in green, Last error: none, Controller ID: 1 and Topics (visible). An Autoscroll health checkbox is ticked at the bottom. 1
Two healthy clusters.
  1. Autoscroll health keeps the newest lines in view. Untick it to read back through older checks.

Each check lists the cluster's Status (online or offline), the Last error KafkIO got from it, the broker that's the active controller, and how many topics you can see. Anything in red (an offline status, an error) is what to look at: a cluster that went away, expired credentials, a broker that's down. The log keeps the last 500 lines. Show or hide it with View ▸ Health Log or Alt+3; Troubleshooting Connections covers what to do about errors.

The status bar

The left end of the status bar names the selected cluster and whether it's connected (for example Storefront Dev: connected), next to the Kafka logo in its colour. The right end shows how much memory KafkIO is using (Mem Used: ... | Max: ...) and a connection icon. Click the memory figures for a JVM Stats pop-up (memory, garbage collection, threads, CPU load), which is mainly useful when reporting a performance problem.

Notifications and background tasks

Notifications and the Event Log

Short confirmations (Connected to Storefront Dev, Deleted topic) pop up briefly in the bottom-right corner and disappear by themselves. When many arrive at once, KafkIO shows only the last one, with a link to the Event Log. Some hints appear instead as a bar across the top of the tab, sometimes with buttons to act on them; click the bar or its × to dismiss it.

Everything (notifications, warnings and errors) also goes to the Event Log: Help ▸ View Event Log. It's the place to look when something flashed by too fast to read, and its Copy Log, Clear Log and Report Issue buttons help when reporting a problem (see Getting Help). Errors that need your attention open a dialog instead, with the details behind an Exception Details section.

Background tasks and cancelling

Work that takes a moment (connecting, loading a section, searching) covers the area it affects with a progress message until it's done; when it can be stopped, a Cancel link appears under the message. Longer jobs you send to the background, such as dumping a topic with Start In Background, show in the toolbar's background task indicator 9 instead: click it for the Background Tasks list, with each task's progress and a button to cancel it. If you quit while one is running, KafkIO asks first.

Common UI conventions

Lists of brokers, topics, consumer groups, schemas, ACLs, connectors and ksqlDB objects are all tables that work the same way. The Consumers section shows the common parts:

The right half of the Consumers section: the end of the Filter consumers field with its regex icon, action buttons and a refresh button, then the Consumer Lag, Coordinator and State columns of four consumer groups, with a refresh icon at the end of each row. The order-processor row, with a lag of 20, is selected. 1 2 3 4 5
The Consumers table's filter and refresh buttons.
  1. The filter field.
  2. The regex toggle.
  3. Refresh all rows (its tooltip names the table, for example Refresh All Consumers).
  4. Refresh this row only.
  5. A column with an information pop-up.

Filtering, including regex

Type in a filter field 1 and the table narrows to rows containing that text, ignoring case, as you type. The count badge in the table's bottom-left corner (Consumers: 4) shows how many rows are listed. Click the regex toggle 2 to treat the text as a regular expression (Java syntax) instead: it matches anywhere in the row's text unless you anchor it with ^ and $, and it's case-sensitive (start with (?i) to ignore case). For example, ^(orders|payments) keeps the topics whose names start with either word. While the expression is incomplete or invalid, nothing matches. The same toggle is on the Kafka Clusters filter and the message text filter.

Sorting and refreshing

Click a column header to sort by it; click again to reverse the order. Most tables don't refresh by themselves: click the refresh button 3 to reload the whole table from the cluster, or a row's own refresh button 4 (in tables that have one, such as topics, consumer groups, schemas and connectors) to update just that row, which is quicker on a large cluster when you're watching one thing, such as one group's lag. Right-click menus often have a Refresh item too.

Column information pop-ups

Headers and labels with a small question-mark icon 5 explain themselves: hover over the icon.

A pop-up next to the Consumer Lag column header: Consumer lag indicates how far behind a consumer is in processing messages from a Kafka topic. This column shows the total lag across all partitions consumed by the consumer group. A high consumer lag may indicate that the consumers are struggling to keep up with the rate of incoming messages, or they may be paused or inactive.
Hovering over the information icon of the Consumer Lag column.

Compact tables

View ▸ Compact Tables tightens the rows of every table, so more fit on screen: handy on a laptop or with a long list of topics. It's off by default, and KafkIO remembers the setting. (The screenshots in these docs are taken with it on.)

Copying to the clipboard

Right-click a row for its menu: the actions for that kind of object (here Refresh, Offsets Tweak and Delete Consumer), then the copy items:

The consumer groups table with the order-processor row selected and its right-click menu open: Refresh, Offsets Tweak, Delete Consumer, Copy 'order-processor', Copy Summary and Copy All Summaries (4). 6 7 8
A consumer group's right-click menu.
  1. Copy '...' copies the value of the cell you right-clicked, in full even if the column cuts it off.
  2. Copy Summary copies the row as text, one Column: value line per column, ready to paste into a ticket or a chat.
  3. Copy All Summaries (N) does the same for all N rows listed. Only the rows the filter lets through are copied, so filter first to copy a selection.

Messages have their own copy items (Copy Event Summary, Copy All Event Summaries); see Viewing Messages.

"More Actions" and right-click menus

Where there's no room for every action as a button, a three-dot button opens the rest: Cluster Actions on each cluster in the Kafka Clusters pane, and More Actions above the topics list. Most actions are also on the right-click menu of the thing they act on, and the toolbar buttons above a table act on its selected row.

Split panes and detail tabs

Sections with a table show the selected row's details in tabs underneath (for a consumer group: Overview and Subscribed Topics). Drag the divider between the table and the details to give either more room. The Topics section adds the topics list on the right, with its own divider.

The arrow at the top right of the detail tabs (Undock window) moves them into a window of their own, which you can put on another screen while the table keeps the full height. The details still follow the row you select:

A separate window titled Consumers — order-processor, with a green triangle in its top-left corner, the Overview and Subscribed Topics tabs, and cards for State EMPTY, Members 0, Assigned Topics 1, Assigned Partitions 3, Coordinator 1 and Total Lag 20. Two buttons sit at the top right. 1 2
A consumer group's details in their own window; the green corner shows it belongs to Storefront Dev.
  1. Re-dock window puts the tabs back under the table. Closing the window does the same.
  2. Always on top (on by default) keeps the window above KafkIO's main window.

Brokers, Consumers, Schema Registry and Kafka Connect, a topic's Messages and Consumers tabs, and the ksqlDB editor all have this. For a single message's key or value, the eye button (View in Window) opens just that value in a window: see Viewing Messages.

Hints and tooltips

Besides the information pop-ups, many screens carry tips and notes (the Docker notes in the cluster dialog, for example), and most buttons explain themselves in a tooltip when you hover over them. Once you know your way around, you can turn the hints off: File ▸ Preferences ▸ General, then untick Show hints (i.e. helpful tooltips, suggestions and explanations) under User interface (see General & Appearance). This hides most information icons and tips; tooltips stay.

Confirmation dialogs

Anything that can't be undone, or that throws away data, asks first: deleting a topic, schema, connector, ACL or cluster configuration, clearing or re-creating a topic, disconnecting, closing a duplicate tab. The dialog names what's affected (Delete topic orders) and its button says what will happen (Delete, Disconnect), with Cancel beside it. Read the name before you confirm, especially if the cluster's colour says production.

In KafkIO's dialogs, Esc closes the dialog and Ctrl+Enter runs its main action. Every shortcut is listed in Keyboard Shortcuts.