How-to set graphical user interface (GUI) defaults
Please note that with Werk #17649: Notify users of deprecated plug-ins more prominently:
Users who are allowed to manage MKPs will be notified of deprecated plug-ins through a notification in the UI, which is indicated by a small red bubble on the "User" menu.
We are now introducing this mechanism to make users of extension packages that no longer work with 2.4 aware of the incompatibility in advance so that they can migrate or update their installed extension packages before the update to 2.4.
Due to the changes introduced in the above-mentioned Werk, Checkmk might show an error like this:
Introduction
The Checkmk GUI can be customized easily by each user to fit their personal needs. Here are some examples:
- The start page
- The number of columns
- The row limit
- The Sidebar snapins
- The time format
How to set Defaults?
It might be useful to define your own defaults for some of these settings so a new user doesn't have to change everything on his own.
The factory defaults are set in the file ~/lib/python3/cmk/gui/plugins/config/base.py. As this file is located below the ~/lib path, it might be changed during an "omd update", so it is not recommended to change this file. But many of the settings defined there can also be set in a file below the ~/local path. The exact path differs based on the Checkmk version.
Get the factory defaults from the original file, for example:
~/lib/python3/cmk/gui/plugins/config/base.py# Default timestamp format to be used in multisite default_ts_format = 'mixed'
.
Create a file below ~/local/share/check_mk/web/plugins/config and define your preferred default setting, for example:
~/local/share/check_mk/web/plugins/config/my_base.py# We prefer to se both, the absolute and the relative time default_ts_format = 'both'
.
After doing an "omd restart apache", you will find this setting in your GUI:
OMD[mysite]:~$ omd restart apache
Example 2: Default Sidebar Snapins
In the case of the sidebar snapins, the file ~/lib/python3/cmk/gui/plugins/config/base.py doesn't help us because the variable "sidebar" that is set there seems to have a new data structure. You can find out this structure by explicitly configuring your sidebar in the GUI and then checking out the file ~/var/check_mk/web/<your_username>/sidebar.mk. The structure you find there can be used in ~/local/share/check_mk/web/plugins/config/my_base.py:
# Newly create users should get these sidebar snapins: sidebar = [ { 'snapin_type_id': 'tactical_overview', 'visibility': 'open' }, { 'snapin_type_id': 'bookmarks', 'visibility': 'open' }, { 'snapin_type_id': 'views', 'visibility': 'closed' }, { 'snapin_type_id': 'search', 'visibility': 'closed' }, { 'snapin_type_id': 'time', 'visibility': 'closed' } ]
Recommendations
Sometimes it's hard to work out the possible values of a setting. In that case, applying the setting in the GUI and then doing a "grep" in ~/var/check_mk/web might be helpful:
OMD[mysite]:~$ grep -r ts_format ~/var/check_mk/web/ /omd/sites/mysite/var/check_mk/web/cmkadmin/viewoptions.mk:{'svcproblems': {'ts_date': '%Y-%m-%d', 'ts_format': 'abs'}}
Related articles