Skip Navigation

Preferences

Managing Preferences

Find a setting, see what you've changed, export and import preferences, and reset them from the window or the command line.

The tools below the page list in KafkIO Preferences work on all your preferences at once: find a setting, see which ones you've changed, copy them to another machine, or go back to the defaults. This page covers them, and how to reset preferences from the command line when KafkIO won't start properly. The settings themselves are described on their own pages: General & Appearance, Network, Proxy & Trust, Kafka & Timeouts and Kerberos.

The KafkIO Preferences window with timeout typed in the Search box. The page list on the left has narrowed to Kafka alone, and on the Kafka page every label containing the word timeout is outlined in red: Request/connect timeout (ms), API/read timeout (ms), and the Connect timeout and Read timeout fields of Schema Registry and Kafka Connect. Below the page list are five icon buttons: import, export, show preferences, reset and memory stick mode. 1 2 3 4 5 6 7
Searching for "timeout" leaves only the Kafka page in the list and outlines the matching settings.
  1. The Search... box.
  2. The page list, narrowed to the pages with a match.
  3. A matching setting, outlined.
  4. Import preferences from file.
  5. Export preferences to file.
  6. Show preferences: a list of every stored setting.
  7. Reset preferences.

The fifth button turns Memory Stick Mode on and off (it isn't shown on macOS). The buttons have no labels: hover over one for its name.

What preferences include

Preferences are stored per user account on each computer, in Java's preferences store: on Windows that's the registry key HKEY_CURRENT_USER\Software\JavaSoft\Prefs\com\certak\kafkio, on macOS and Linux a file in your home folder (see File Locations). Besides the settings on the four pages, KafkIO keeps a few things there itself, such as the window size and position, the width of the side panes, an update you chose to ignore, and the folder you last exported preferences to.

Some things you might expect to find are kept elsewhere, so exporting, importing and resetting preferences don't touch them:

Searching preferences

Type in the Search... box 1 above the page list to find a setting without knowing which page it's on. As you type, the list 2 keeps only the pages with a match, opens the first of them, and outlines each matching setting 3. The search is not case-sensitive and looks at page names and at the text of the labels and check boxes on each page; it doesn't look at hint text, tooltips or the values in the fields. Clear the box to see all the pages again.

Pressing Enter in the box does nothing, so it can't save the window by accident.

Showing all preferences

Click 6 Show preferences to open a Preferences window that lists the stored preferences by their internal key, with their type (BOOLEAN, INTEGER or STRING), current value and default. It's read-only: it's for answering "what have I changed?" and for finding the key names you need to reset single preferences from the command line.

The Preferences window with timeout typed in its search field and Show only preferences deviating from their default value ticked. The table has the columns type, key, value and default, and two rows: INTEGER kafkaApiTimeout 60000 with default 20000, and INTEGER kafkaRequestTimeout 20000 with default 6000. 1 2
The two Kafka client timeouts that were changed from their defaults.
  1. Filters the list by key, for example timeout or proxy. It matches the internal key names (kafkaRequestTimeout), not the labels on the preference pages.
  2. Show only preferences deviating from their default value: hides every row whose value equals its default, and sorts the rest by key.

The number of rows shown is at the bottom right. A few things to know when reading the list:

  • It shows only the preferences that have been stored. KafkIO stores a setting when you change it, so on a new installation, or just after a reset, the list is nearly empty even though every setting has a value (its default).
  • The default column is empty for keys that have no default, such as some of the window layout keys, so those always count as changed.
  • Some layout keys are stored in a different form from their default (the side pane width, for example, is a width in pixels against a default fraction), so they always look changed too. Ignore them.

Exporting preferences

Click 5 Export preferences to file and choose where to save an XML file. The file dialog opens in the folder you last exported to (your home folder the first time). Use an export as a backup before experimenting, or to give a colleague, or yourself on another computer, the same setup.

Exporting first saves the window, exactly as Save would: any changes you've made in the window are stored (and confirmed with Preferences recorded) and end up in the file, even if you click Cancel afterwards. If a value is invalid, the save stops with an error and nothing is exported.

The file holds every stored preference, including your proxy host and user name, paths to files on your computer and window positions; it doesn't hold your clusters, a saved proxy password or custom certificates (What preferences include). Check it before you send it to anyone.

Importing preferences

Click 4 Import preferences from file and choose an XML file exported from KafkIO. Each preference in the file replaces your current value; preferences that aren't in the file keep their current values, so an import adds to your setup rather than replacing all of it. If the file isn't a valid preferences export, KafkIO shows Could not import preferences and changes nothing.

KafkIO then says "You must restart KafkIO for this to come into effect." Until you do, the Preferences window still shows the values from before the import. Close it with Cancel and restart KafkIO.

Tip: to move your whole KafkIO setup to another computer, export the preferences and copy clusters.json as well (File Locations). Proxy passwords and custom certificates have to be entered again on the new computer.

Resetting preferences

Click 7 Reset preferences and confirm with Reset preferences to put every preference back to its default: theme, language, timeouts, proxy, Kerberos, update checks, and the window layout. It's the quickest way out when you no longer know which setting causes a problem. If you might want your settings back, export them first: a reset can't be undone.

The reset happens as soon as you confirm, not when you click Save, and Cancel doesn't bring anything back. KafkIO then says "You must restart KafkIO for this to come into effect.": the running app, and the Preferences window, keep using the old values until you restart, so close the window with Cancel and restart KafkIO.

Warning: a reset also deletes the custom certificates you added on the Network page. Your clusters are not affected. In Memory Stick Mode, KafkIO reloads the preferences file kept next to the program the next time it starts, which undoes the reset: turn Memory Stick Mode off and save before resetting.

There's no button to reset a single setting: type its default back in on its page (each page's docs list the defaults), or use the command line below.

From the command line

If a setting stops KafkIO from starting or makes it unusable (an unreachable proxy, a font size too big to work with), reset it without opening the window: close KafkIO, then start it with -d (or --delpr) followed by a comma-separated list of preference keys, or all. The keys are the names in the Show preferences list. KafkIO removes those preferences as it starts, so they go back to their defaults, then opens as usual.

"C:\Program Files\KafkIO\KafkIO.exe" --delpr mainFontSize,overrideDefaultFontSize
/opt/kafkio/bin/KafkIO --delpr useProxy
/Applications/KafkIO.app/Contents/MacOS/KafkIO --delpr all

Adjust the path to where KafkIO is installed (Installation & Updates). --delpr all is the same as the Reset preferences button, custom certificates and the Memory Stick Mode caveat included. A key that isn't stored (misspelt, or already at its default) is skipped. The language, proxy, Kerberos and certificate settings are applied before the reset runs, so if you reset one of those, restart KafkIO once more for it to take effect. All the options are on Command-Line Options.