We use cookies to ensure that we give you the best experience on our website.  Visit our Privacy Policy to learn more. If you continue to use this site, we will assume that you are okay with it.

Your choices regarding cookies on this site.
Your preferences have been updated.
In order for the changes to take effect completely please clear your browser cookies and cache. Then reload the page.

Werk #7770: Fix 'Periodic service discovery' disabling rules breaking config

ComponentCore & Setup
TitleFix "Periodic service discovery" disabling rules breaking config
Date2019-06-07 15:39:44
Checkmk EditionCheckmk Raw Edition (CRE)
Checkmk Version1.6.0b2,1.7.0i1
LevelProminent Change
ClassBug Fix
CompatibilityCompatible - no manual interaction needed

In 1.6.0b1 a rule in the ruleset "Periodic service discovery" that is configured with the option "Do not perform service discovery check" resulted in the following exception when updating the core config (e.g. with cmk -U):

OMD[testsite]:~$ cmk --debug -Uv
Generating configuration for core (type cmc)...
time period '24X7': 2 time points
Configuration Error: 'NoneType' object has no attribute '__getitem__'
Traceback (most recent call last):
File "/omd/sites/testsite/bin/cmk", line 94, in
exit_status = modes.call(mode_name, mode_args, opts, args)
File "/omd/sites/testsite/lib/python/cmk_base/modes/__init__.py", line 72, in call
return mode.handler_function(*handler_args)
File "/omd/sites/testsite/lib/python/cmk_base/modes/check_mk.py", line 1106, in mode_update
do_update(create_core(options), with_precompile=True)
File "/omd/sites/testsite/lib/python/cmk_base/core_config.py", line 266, in do_update
do_create_config(core, with_agents=with_precompile)
File "/omd/sites/testsite/lib/python/cmk_base/core_config.py", line 219, in do_create_config
File "/omd/sites/testsite/lib/python/cmk_base/core_config.py", line 235, in create_core_config
File "/omd/sites/testsite/lib/python/cmk_base/cee/core_cmc.py", line 63, in create_config
File "/omd/sites/testsite/lib/python/cmk_base/cee/core_cmc.py", line 123, in _create_config_hook
hosts_config = _measure_time(cmc_all_hosts)
File "/omd/sites/testsite/lib/python/cmk_base/cee/core_cmc.py", line 156, in _measure_time
result = func(*args, **kwargs)
File "/omd/sites/testsite/lib/python/cmk_base/cee/core_cmc.py", line 457, in cmc_all_hosts
cmc_hosts = CMCHosts(config_cache.all_active_hosts(), CMCHostConfig)
File "/omd/sites/testsite/lib/python/cmk_base/cee/core_cmc.py", line 501, in __init__
self._compute(hostnames, host_class)
File "/omd/sites/testsite/lib/python/cmk_base/cee/core_cmc.py", line 513, in _compute
host_config = host_class(hostname)
File "/omd/sites/testsite/lib/python/cmk_base/cee/core_cmc.py", line 966, in __init__
File "/omd/sites/testsite/lib/python/cmk_base/cee/core_cmc.py", line 984, in _compute
File "/omd/sites/testsite/lib/python/cmk_base/cee/core_cmc.py", line 1259, in _cmc_services
if disc_check_params["check_interval"] \
TypeError: 'NoneType' object has no attribute '__getitem__'