CMK version: 2.4.0p32
OS version: RHEL 9.7
Error message:
Started at: 08:19:01. Finished at: 08:19:04.Error running automation call restart (exit code 1), error:
An error occurred: Error creating configuration: Traceback (most recent call last):
File "/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py", line 2177, in _hosts_worker
hosts_data = _compute_worker_hosts_data(
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py", line 2065, in _compute_worker_hosts_data
helper_config_manager.get_host_data(
File "/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py", line 3050, in get_host_data
host_class(config_cache, hostname, hosts_config, passwords, ip_address_of),
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py", line 1320, in __init__
host_attrs=config_cache.get_host_attributes(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/omd/sites/wato/lib/python3/cmk/base/config.py", line 3521, in get_host_attributes
attrs = self.extra_host_attributes(hostname)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/omd/sites/wato/lib/python3/cmk/base/config.py", line 2353, in extra_host_attributes
values = self.ruleset_matcher.get_host_values(host_name, ruleset)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py", line 254, in get_host_values
self.ruleset_optimizer.get_host_ruleset(ruleset, with_foreign_hosts)
File "/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py", line 581, in get_host_ruleset
return self.__host_ruleset_cache.setdefault(cache_id, _impl(ruleset, with_foreign_hosts))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py", line 572, in _impl
for hostname in self._all_matching_hosts(rule["condition"], with_foreign_hosts):
~~~~^^^^^^^^^^^^^
TypeError: tuple indices must be integers or slices, not str
Traceback (most recent call last):
File "/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py", line 2177, in _hosts_worker
hosts_data = _compute_worker_hosts_data(
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py", line 2065, in _compute_worker_hosts_data
helper_config_manager.get_host_data(
File "/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py", line 3050, in get_host_data
host_class(config_cache, hostname, hosts_config, passwords, ip_address_of),
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py", line 1320, in __init__
host_attrs=config_cache.get_host_attributes(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/omd/sites/wato/lib/python3/cmk/base/config.py", line 3521, in get_host_attributes
attrs = self.extra_host_attributes(hostname)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/omd/sites/wato/lib/python3/cmk/base/config.py", line 2353, in extra_host_attributes
values = self.ruleset_matcher.get_host_values(host_name, ruleset)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py", line 254, in get_host_values
self.ruleset_optimizer.get_host_ruleset(ruleset, with_foreign_hosts)
File "/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py", line 581, in get_host_ruleset
return self.__host_ruleset_cache.setdefault(cache_id, _impl(ruleset, with_foreign_hosts))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py", line 572, in _impl
for hostname in self._all_matching_hosts(rule["condition"], with_foreign_hosts):
~~~~^^^^^^^^^^^^^
TypeError: tuple indices must be integers or slices, not str
Traceback (most recent call last):
File "/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py", line 2177, in _hosts_worker
hosts_data = _compute_worker_hosts_data(
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py", line 2065, in _compute_worker_hosts_data
helper_config_manager.get_host_data(
File "/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py", line 3050, in get_host_data
host_class(config_cache, hostname, hosts_config, passwords, ip_address_of),
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py", line 1320, in __init__
host_attrs=config_cache.get_host_attributes(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/omd/sites/wato/lib/python3/cmk/base/config.py", line 3521, in get_host_attributes
attrs = self.extra_host_attributes(hostname)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/omd/sites/wato/lib/python3/cmk/base/config.py", line 2353, in extra_host_attributes
values = self.ruleset_matcher.get_host_values(host_name, ruleset)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py", line 254, in get_host_values
self.ruleset_optimizer.get_host_ruleset(ruleset, with_foreign_hosts)
File "/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py", line 581, in get_host_ruleset
return self.__host_ruleset_cache.setdefault(cache_id, _impl(ruleset, with_foreign_hosts))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py", line 572, in _impl
for hostname in self._all_matching_hosts(rule["condition"], with_foreign_hosts):
~~~~^^^^^^^^^^^^^
TypeError: tuple indices must be integers or slices, not str
Traceback (most recent call last):
File "/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py", line 2177, in _hosts_worker
hosts_data = _compute_worker_hosts_data(
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py", line 2065, in _compute_worker_hosts_data
helper_config_manager.get_host_data(
File "/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py", line 3050, in get_host_data
host_class(config_cache, hostname, hosts_config, passwords, ip_address_of),
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py", line 1320, in __init__
host_attrs=config_cache.get_host_attributes(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/omd/sites/wato/lib/python3/cmk/base/config.py", line 3521, in get_host_attributes
attrs = self.extra_host_attributes(hostname)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/omd/sites/wato/lib/python3/cmk/base/config.py", line 2353, in extra_host_attributes
values = self.ruleset_matcher.get_host_values(host_name, ruleset)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py", line 254, in get_host_values
self.ruleset_optimizer.get_host_ruleset(ruleset, with_foreign_hosts)
File "/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py", line 581, in get_host_ruleset
return self.__host_ruleset_cache.setdefault(cache_id, _impl(ruleset, with_foreign_hosts))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py", line 572, in _impl
for hostname in self._all_matching_hosts(rule["condition"], with_foreign_hosts):
~~~~^^^^^^^^^^^^^
TypeError: tuple indices must be integers or slices, not str
Traceback (most recent call last):
File "/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py", line 2177, in _hosts_worker
hosts_data = _compute_worker_hosts_data(
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py", line 2065, in _compute_worker_hosts_data
helper_config_manager.get_host_data(
File "/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py", line 3050, in get_host_data
host_class(config_cache, hostname, hosts_config, passwords, ip_address_of),
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py", line 1320, in __init__
host_attrs=config_cache.get_host_attributes(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/omd/sites/wato/lib/python3/cmk/base/config.py", line 3521, in get_host_attributes
attrs = self.extra_host_attributes(hostname)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/omd/sites/wato/lib/python3/cmk/base/config.py", line 2353, in extra_host_attributes
values = self.ruleset_matcher.get_host_values(host_name, ruleset)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py", line 254, in get_host_values
self.ruleset_optimizer.get_host_ruleset(ruleset, with_foreign_hosts)
File "/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py", line 581, in get_host_ruleset
return self.__host_ruleset_cache.setdefault(cache_id, _impl(ruleset, with_foreign_hosts))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py", line 572, in _impl
for hostname in self._all_matching_hosts(rule["condition"], with_foreign_hosts):
~~~~^^^^^^^^^^^^^
TypeError: tuple indices must be integers or slices, not str
Traceback (most recent call last):
File "/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py", line 2177, in _hosts_worker
hosts_data = _compute_worker_hosts_data(
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py", line 2065, in _compute_worker_hosts_data
helper_config_manager.get_host_data(
File "/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py", line 3050, in get_host_data
host_class(config_cache, hostname, hosts_config, passwords, ip_address_of),
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py", line 1320, in __init__
host_attrs=config_cache.get_host_attributes(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/omd/sites/wato/lib/python3/cmk/base/config.py", line 3521, in get_host_attributes
attrs = self.extra_host_attributes(hostname)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/omd/sites/wato/lib/python3/cmk/base/config.py", line 2353, in extra_host_attributes
values = self.ruleset_matcher.get_host_values(host_name, ruleset)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py", line 254, in get_host_values
self.ruleset_optimizer.get_host_ruleset(ruleset, with_foreign_hosts)
File "/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py", line 581, in get_host_ruleset
return self.__host_ruleset_cache.setdefault(cache_id, _impl(ruleset, with_foreign_hosts))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py", line 572, in _impl
for hostname in self._all_matching_hosts(rule["condition"], with_foreign_hosts):
~~~~^^^^^^^^^^^^^
TypeError: tuple indices must be integers or slices, not str
Sorry for the long title.
since Friday morning we are no longer able to activate changes on our central site. After just some seconds we get the error above.
The Activation works fine for the remote sites.
We Updated to 2.4.0p32 (from 2.4.0p26) on Wednesday. Besides a Nagvis issue everything worked just fine. We were able to activate changes on Thursday. Thursday evening the server was restarted and on Friday morning the activation of changes was no longer possible for the central site.
omd restart does not fix the problem.
output of cmk -R --debug -vvv:
Trying to acquire lock on /omd/sites/wato/etc/check_mk/main.mk
Got lock on /omd/sites/wato/etc/check_mk/main.mk
Generating configuration for core (type cmc)…
Trying to acquire lock on /omd/sites/wato/var/check_mk/passwords_merged
Got lock on /omd/sites/wato/var/check_mk/passwords_merged
Releasing lock on /omd/sites/wato/var/check_mk/passwords_merged
Released lock on /omd/sites/wato/var/check_mk/passwords_merged
Trying to acquire lock on /omd/sites/wato/var/check_mk/core/helper_config/serial.mk
Got lock on /omd/sites/wato/var/check_mk/core/helper_config/serial.mk
Releasing lock on /omd/sites/wato/var/check_mk/core/helper_config/serial.mk
Released lock on /omd/sites/wato/var/check_mk/core/helper_config/serial.mk
Trying to acquire lock on /omd/sites/wato/var/check_mk/licensing/licensed_state
Got lock on /omd/sites/wato/var/check_mk/licensing/licensed_state
Releasing lock on /omd/sites/wato/var/check_mk/licensing/licensed_state
Released lock on /omd/sites/wato/var/check_mk/licensing/licensed_state
time period …(removed this lines because of the names)
Starting full compilation for all hosts
Creating global helper config…Trying to acquire lock on /omd/sites/wato/var/check_mk/core/helper_config/4811/rrd_config/cmc_log_rrdcreation
Got lock on /omd/sites/wato/var/check_mk/core/helper_config/4811/rrd_config/cmc_log_rrdcreation
Releasing lock on /omd/sites/wato/var/check_mk/core/helper_config/4811/rrd_config/cmc_log_rrdcreation
Released lock on /omd/sites/wato/var/check_mk/core/helper_config/4811/rrd_config/cmc_log_rrdcreation
Trying to acquire lock on /omd/sites/wato/var/check_mk/core/helper_config/4811/inventory_plugins_index.json
Got lock on /omd/sites/wato/var/check_mk/core/helper_config/4811/inventory_plugins_index.json
Releasing lock on /omd/sites/wato/var/check_mk/core/helper_config/4811/inventory_plugins_index.json
Released lock on /omd/sites/wato/var/check_mk/core/helper_config/4811/inventory_plugins_index.json
OK
Creating cmc protobuf configuration…Releasing lock on /omd/sites/wato/etc/check_mk/main.mk
Released lock on /omd/sites/wato/etc/check_mk/main.mk
Trying to acquire lock on /omd/sites/wato/var/check_mk/crashes/base/433666fc-7907-11f1-bb85-005056bd0e74/crash.info
Got lock on /omd/sites/wato/var/check_mk/crashes/base/433666fc-7907-11f1-bb85-005056bd0e74/crash.info
Releasing lock on /omd/sites/wato/var/check_mk/crashes/base/433666fc-7907-11f1-bb85-005056bd0e74/crash.info
Released lock on /omd/sites/wato/var/check_mk/crashes/base/433666fc-7907-11f1-bb85-005056bd0e74/crash.info
Traceback (most recent call last):
File “/omd/sites/wato/bin/cmk”, line 151, in
exit_status = modes.call(mode_name, mode_args, opts, args, trace_context)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/base/modes/init.py”, line 91, in call
return handler(*handler_args)
^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/base/modes/check_mk.py”, line 1494, in mode_restart
cmk.base.core.do_restart(
File “/omd/sites/wato/lib/python3/cmk/base/core.py”, line 92, in do_restart
core_config.do_create_config(
File “/omd/sites/wato/lib/python3/cmk/base/core_config.py”, line 289, in do_create_config
_create_core_config(
File “/omd/sites/wato/lib/python3/cmk/base/core_config.py”, line 401, in _create_core_config
core.create_config(
File “/omd/sites/wato/lib/python3/cmk/base/core_config.py”, line 75, in create_config
self._create_config(
File “/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py”, line 3405, in _create_config
data = create_core_config(
^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py”, line 3323, in create_core_config
hosts_results = _serialize_config_hosts(
^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py”, line 2912, in _serialize_config_hosts
hosts.compute_configuration(
File “/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py”, line 2553, in compute_configuration
for r in _compute_hosts_configurations(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py”, line 3469, in _one_worker_per_chunk
raise Exception(“\n”.join(map(str, errors)))
Exception: Traceback (most recent call last):
File “/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py”, line 2177, in _hosts_worker
hosts_data = _compute_worker_hosts_data(
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py”, line 2065, in _compute_worker_hosts_data
helper_config_manager.get_host_data(
File “/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py”, line 3050, in get_host_data
host_class(config_cache, hostname, hosts_config, passwords, ip_address_of),
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py”, line 1320, in init
host_attrs=config_cache.get_host_attributes(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/base/config.py”, line 3521, in get_host_attributes
attrs = self.extra_host_attributes(hostname)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/base/config.py”, line 2353, in extra_host_attributes
values = self.ruleset_matcher.get_host_values(host_name, ruleset)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py”, line 254, in get_host_values
self.ruleset_optimizer.get_host_ruleset(ruleset, with_foreign_hosts)
File “/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py”, line 581, in get_host_ruleset
return self.__host_ruleset_cache.setdefault(cache_id, _impl(ruleset, with_foreign_hosts))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py”, line 572, in _impl
for hostname in self._all_matching_hosts(rule[“condition”], with_foreign_hosts):
~~~~^^^^^^^^^^^^^
TypeError: tuple indices must be integers or slices, not str
Traceback (most recent call last):
File “/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py”, line 2177, in _hosts_worker
hosts_data = _compute_worker_hosts_data(
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py”, line 2065, in _compute_worker_hosts_data
helper_config_manager.get_host_data(
File “/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py”, line 3050, in get_host_data
host_class(config_cache, hostname, hosts_config, passwords, ip_address_of),
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py”, line 1320, in init
host_attrs=config_cache.get_host_attributes(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/base/config.py”, line 3521, in get_host_attributes
attrs = self.extra_host_attributes(hostname)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/base/config.py”, line 2353, in extra_host_attributes
values = self.ruleset_matcher.get_host_values(host_name, ruleset)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py”, line 254, in get_host_values
self.ruleset_optimizer.get_host_ruleset(ruleset, with_foreign_hosts)
File “/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py”, line 581, in get_host_ruleset
return self.__host_ruleset_cache.setdefault(cache_id, _impl(ruleset, with_foreign_hosts))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py”, line 572, in _impl
for hostname in self._all_matching_hosts(rule[“condition”], with_foreign_hosts):
~~~~^^^^^^^^^^^^^
TypeError: tuple indices must be integers or slices, not str
Traceback (most recent call last):
File “/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py”, line 2177, in _hosts_worker
hosts_data = _compute_worker_hosts_data(
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py”, line 2065, in _compute_worker_hosts_data
helper_config_manager.get_host_data(
File “/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py”, line 3050, in get_host_data
host_class(config_cache, hostname, hosts_config, passwords, ip_address_of),
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py”, line 1320, in init
host_attrs=config_cache.get_host_attributes(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/base/config.py”, line 3521, in get_host_attributes
attrs = self.extra_host_attributes(hostname)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/base/config.py”, line 2353, in extra_host_attributes
values = self.ruleset_matcher.get_host_values(host_name, ruleset)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py”, line 254, in get_host_values
self.ruleset_optimizer.get_host_ruleset(ruleset, with_foreign_hosts)
File “/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py”, line 581, in get_host_ruleset
return self.__host_ruleset_cache.setdefault(cache_id, _impl(ruleset, with_foreign_hosts))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py”, line 572, in _impl
for hostname in self._all_matching_hosts(rule[“condition”], with_foreign_hosts):
~~~~^^^^^^^^^^^^^
TypeError: tuple indices must be integers or slices, not str
Traceback (most recent call last):
File “/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py”, line 2177, in _hosts_worker
hosts_data = _compute_worker_hosts_data(
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py”, line 2065, in _compute_worker_hosts_data
helper_config_manager.get_host_data(
File “/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py”, line 3050, in get_host_data
host_class(config_cache, hostname, hosts_config, passwords, ip_address_of),
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py”, line 1320, in init
host_attrs=config_cache.get_host_attributes(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/base/config.py”, line 3521, in get_host_attributes
attrs = self.extra_host_attributes(hostname)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/base/config.py”, line 2353, in extra_host_attributes
values = self.ruleset_matcher.get_host_values(host_name, ruleset)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py”, line 254, in get_host_values
self.ruleset_optimizer.get_host_ruleset(ruleset, with_foreign_hosts)
File “/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py”, line 581, in get_host_ruleset
return self.__host_ruleset_cache.setdefault(cache_id, _impl(ruleset, with_foreign_hosts))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py”, line 572, in _impl
for hostname in self._all_matching_hosts(rule[“condition”], with_foreign_hosts):
~~~~^^^^^^^^^^^^^
TypeError: tuple indices must be integers or slices, not str
Traceback (most recent call last):
File “/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py”, line 2177, in _hosts_worker
hosts_data = _compute_worker_hosts_data(
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py”, line 2065, in _compute_worker_hosts_data
helper_config_manager.get_host_data(
File “/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py”, line 3050, in get_host_data
host_class(config_cache, hostname, hosts_config, passwords, ip_address_of),
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py”, line 1320, in init
host_attrs=config_cache.get_host_attributes(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/base/config.py”, line 3521, in get_host_attributes
attrs = self.extra_host_attributes(hostname)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/base/config.py”, line 2353, in extra_host_attributes
values = self.ruleset_matcher.get_host_values(host_name, ruleset)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py”, line 254, in get_host_values
self.ruleset_optimizer.get_host_ruleset(ruleset, with_foreign_hosts)
File “/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py”, line 581, in get_host_ruleset
return self.__host_ruleset_cache.setdefault(cache_id, _impl(ruleset, with_foreign_hosts))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py”, line 572, in _impl
for hostname in self._all_matching_hosts(rule[“condition”], with_foreign_hosts):
~~~~^^^^^^^^^^^^^
TypeError: tuple indices must be integers or slices, not str
Traceback (most recent call last):
File “/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py”, line 2177, in _hosts_worker
hosts_data = _compute_worker_hosts_data(
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py”, line 2065, in _compute_worker_hosts_data
helper_config_manager.get_host_data(
File “/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py”, line 3050, in get_host_data
host_class(config_cache, hostname, hosts_config, passwords, ip_address_of),
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py”, line 1320, in init
host_attrs=config_cache.get_host_attributes(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/base/config.py”, line 3521, in get_host_attributes
attrs = self.extra_host_attributes(hostname)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/base/config.py”, line 2353, in extra_host_attributes
values = self.ruleset_matcher.get_host_values(host_name, ruleset)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py”, line 254, in get_host_values
self.ruleset_optimizer.get_host_ruleset(ruleset, with_foreign_hosts)
File “/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py”, line 581, in get_host_ruleset
return self.__host_ruleset_cache.setdefault(cache_id, _impl(ruleset, with_foreign_hosts))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py”, line 572, in _impl
for hostname in self._all_matching_hosts(rule[“condition”], with_foreign_hosts):
~~~~^^^^^^^^^^^^^
TypeError: tuple indices must be integers or slices, not str
Content of the mentioned crash reports:
{
"core": "cmc",
"crash_type": "base",
"details": {
"argv": [
"/omd/sites/wato/bin/cmk",
"-R",
"--debug",
"-vvv"
],
"env": {
"BASH_FUNC_which%%": "() { ( alias;\n eval ${which_declare} ) | /usr/bin/which --tty-only --read-alias --read-functions --show-tilde --show-dot $@\n}",
"DEBUGINFOD_IMA_CERT_PATH": "/etc/keys/ima:",
"EDITOR": "vim",
"HISTCONTROL": "ignoredups",
"HISTSIZE": "1000",
"HOME": "/omd/sites/wato",
"HOSTNAME": "v971l015",
"LANG": "C.utf8",
"LC_ALL": "C.utf8",
"LD_LIBRARY_PATH": "/omd/sites/wato/local/lib:/omd/sites/wato/lib",
"LESSOPEN": "||/usr/bin/lesspipe.sh %s",
"LOGNAME": "wato",
"LS_COLORS": "rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=01;37;41:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=01;36:*.au=01;36:*.flac=01;36:*.m4a=01;36:*.mid=01;36:*.midi=01;36:*.mka=01;36:*.mp3=01;36:*.mpc=01;36:*.ogg=01;36:*.ra=01;36:*.wav=01;36:*.oga=01;36:*.opus=01;36:*.spx=01;36:*.xspf=01;36:",
"MAIL": "/var/spool/mail/wato",
"MAILRC": "/omd/sites/wato/etc/mail.rc",
"MANPATH": "/omd/sites/wato/share/man:",
"MODULEBUILDRC": "/omd/sites/wato/.modulebuildrc",
"MP_STATE_DIRECTORY": "/omd/sites/wato/var/monitoring-plugins",
"NAGIOS_PLUGIN_STATE_DIRECTORY": "/omd/sites/wato/var/monitoring-plugins",
"OMD_ROOT": "/omd/sites/wato",
"OMD_SITE": "wato",
"PATH": "/omd/sites/wato/lib/rabbitmq/sbin:/omd/sites/wato/lib/perl5/bin:/omd/sites/wato/local/bin:/omd/sites/wato/bin:/omd/sites/wato/local/lib/perl5/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin",
"PERL5LIB": "/omd/sites/wato/local/lib/perl5/lib/perl5:/omd/sites/wato/lib/perl5/lib/perl5:",
"PERL_MM_OPT": "INSTALL_BASE=/omd/sites/wato/local/lib/perl5/",
"PWD": "/omd/sites/wato",
"RABBITMQ_ERLANG_COOKIE": "UZMSLSTINAOXDWLAWDTO",
"RABBITMQ_HOME": "/omd/sites/wato",
"RABBITMQ_NODENAME": "rabbit-wato@localhost",
"REQUESTS_CA_BUNDLE": "/omd/sites/wato/var/ssl/ca-certificates.crt",
"SHELL": "/bin/bash",
"SHLVL": "1",
"SQLITE_TMPDIR": "/omd/sites/wato/tmp",
"SSL_CERT_FILE": "/omd/sites/wato/var/ssl/ca-certificates.crt",
"TERM": "xterm",
"USER": "wato",
"XDG_DATA_DIRS": "/omd/sites/wato/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share",
"_": "/omd/sites/wato/bin/cmk",
"which_declare": "declare -f"
}
},
"edition": "cee",
"exc_traceback": [
[
"/omd/sites/wato/bin/cmk",
151,
"<module>",
"exit_status = modes.call(mode_name, mode_args, opts, args, trace_context)"
],
[
"/omd/sites/wato/lib/python3/cmk/base/modes/__init__.py",
91,
"call",
"return handler(*handler_args)"
],
[
"/omd/sites/wato/lib/python3/cmk/base/modes/check_mk.py",
1494,
"mode_restart",
"cmk.base.core.do_restart("
],
[
"/omd/sites/wato/lib/python3/cmk/base/core.py",
92,
"do_restart",
"core_config.do_create_config("
],
[
"/omd/sites/wato/lib/python3/cmk/base/core_config.py",
289,
"do_create_config",
"_create_core_config("
],
[
"/omd/sites/wato/lib/python3/cmk/base/core_config.py",
401,
"_create_core_config",
"core.create_config("
],
[
"/omd/sites/wato/lib/python3/cmk/base/core_config.py",
75,
"create_config",
"self._create_config("
],
[
"/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py",
3405,
"_create_config",
"data = create_core_config("
],
[
"/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py",
3323,
"create_core_config",
"hosts_results = _serialize_config_hosts("
],
[
"/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py",
2912,
"_serialize_config_hosts",
"hosts.compute_configuration("
],
[
"/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py",
2553,
"compute_configuration",
"for r in _compute_hosts_configurations("
],
[
"/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py",
3469,
"_one_worker_per_chunk",
"raise Exception(\"\\n\".join(map(str, errors)))"
]
],
"exc_type": "Exception",
"exc_value": "Traceback (most recent call last):\n File \"/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py\", line 2177, in _hosts_worker\n hosts_data = _compute_worker_hosts_data(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py\", line 2065, in _compute_worker_hosts_data\n helper_config_manager.get_host_data(\n File \"/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py\", line 3050, in get_host_data\n host_class(config_cache, hostname, hosts_config, passwords, ip_address_of),\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py\", line 1320, in __init__\n host_attrs=config_cache.get_host_attributes(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/omd/sites/wato/lib/python3/cmk/base/config.py\", line 3521, in get_host_attributes\n attrs = self.extra_host_attributes(hostname)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/omd/sites/wato/lib/python3/cmk/base/config.py\", line 2353, in extra_host_attributes\n values = self.ruleset_matcher.get_host_values(host_name, ruleset)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py\", line 254, in get_host_values\n self.ruleset_optimizer.get_host_ruleset(ruleset, with_foreign_hosts)\n File \"/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py\", line 581, in get_host_ruleset\n return self.__host_ruleset_cache.setdefault(cache_id, _impl(ruleset, with_foreign_hosts))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py\", line 572, in _impl\n for hostname in self._all_matching_hosts(rule[\"condition\"], with_foreign_hosts):\n ~~~~^^^^^^^^^^^^^\nTypeError: tuple indices must be integers or slices, not str\n\nTraceback (most recent call last):\n File \"/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py\", line 2177, in _hosts_worker\n hosts_data = _compute_worker_hosts_data(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py\", line 2065, in _compute_worker_hosts_data\n helper_config_manager.get_host_data(\n File \"/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py\", line 3050, in get_host_data\n host_class(config_cache, hostname, hosts_config, passwords, ip_address_of),\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py\", line 1320, in __init__\n host_attrs=config_cache.get_host_attributes(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/omd/sites/wato/lib/python3/cmk/base/config.py\", line 3521, in get_host_attributes\n attrs = self.extra_host_attributes(hostname)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/omd/sites/wato/lib/python3/cmk/base/config.py\", line 2353, in extra_host_attributes\n values = self.ruleset_matcher.get_host_values(host_name, ruleset)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py\", line 254, in get_host_values\n self.ruleset_optimizer.get_host_ruleset(ruleset, with_foreign_hosts)\n File \"/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py\", line 581, in get_host_ruleset\n return self.__host_ruleset_cache.setdefault(cache_id, _impl(ruleset, with_foreign_hosts))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py\", line 572, in _impl\n for hostname in self._all_matching_hosts(rule[\"condition\"], with_foreign_hosts):\n ~~~~^^^^^^^^^^^^^\nTypeError: tuple indices must be integers or slices, not str\n\nTraceback (most recent call last):\n File \"/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py\", line 2177, in _hosts_worker\n hosts_data = _compute_worker_hosts_data(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py\", line 2065, in _compute_worker_hosts_data\n helper_config_manager.get_host_data(\n File \"/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py\", line 3050, in get_host_data\n host_class(config_cache, hostname, hosts_config, passwords, ip_address_of),\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py\", line 1320, in __init__\n host_attrs=config_cache.get_host_attributes(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/omd/sites/wato/lib/python3/cmk/base/config.py\", line 3521, in get_host_attributes\n attrs = self.extra_host_attributes(hostname)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/omd/sites/wato/lib/python3/cmk/base/config.py\", line 2353, in extra_host_attributes\n values = self.ruleset_matcher.get_host_values(host_name, ruleset)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py\", line 254, in get_host_values\n self.ruleset_optimizer.get_host_ruleset(ruleset, with_foreign_hosts)\n File \"/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py\", line 581, in get_host_ruleset\n return self.__host_ruleset_cache.setdefault(cache_id, _impl(ruleset, with_foreign_hosts))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py\", line 572, in _impl\n for hostname in self._all_matching_hosts(rule[\"condition\"], with_foreign_hosts):\n ~~~~^^^^^^^^^^^^^\nTypeError: tuple indices must be integers or slices, not str\n\nTraceback (most recent call last):\n File \"/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py\", line 2177, in _hosts_worker\n hosts_data = _compute_worker_hosts_data(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py\", line 2065, in _compute_worker_hosts_data\n helper_config_manager.get_host_data(\n File \"/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py\", line 3050, in get_host_data\n host_class(config_cache, hostname, hosts_config, passwords, ip_address_of),\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py\", line 1320, in __init__\n host_attrs=config_cache.get_host_attributes(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/omd/sites/wato/lib/python3/cmk/base/config.py\", line 3521, in get_host_attributes\n attrs = self.extra_host_attributes(hostname)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/omd/sites/wato/lib/python3/cmk/base/config.py\", line 2353, in extra_host_attributes\n values = self.ruleset_matcher.get_host_values(host_name, ruleset)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py\", line 254, in get_host_values\n self.ruleset_optimizer.get_host_ruleset(ruleset, with_foreign_hosts)\n File \"/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py\", line 581, in get_host_ruleset\n return self.__host_ruleset_cache.setdefault(cache_id, _impl(ruleset, with_foreign_hosts))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py\", line 572, in _impl\n for hostname in self._all_matching_hosts(rule[\"condition\"], with_foreign_hosts):\n ~~~~^^^^^^^^^^^^^\nTypeError: tuple indices must be integers or slices, not str\n\nTraceback (most recent call last):\n File \"/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py\", line 2177, in _hosts_worker\n hosts_data = _compute_worker_hosts_data(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py\", line 2065, in _compute_worker_hosts_data\n helper_config_manager.get_host_data(\n File \"/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py\", line 3050, in get_host_data\n host_class(config_cache, hostname, hosts_config, passwords, ip_address_of),\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py\", line 1320, in __init__\n host_attrs=config_cache.get_host_attributes(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/omd/sites/wato/lib/python3/cmk/base/config.py\", line 3521, in get_host_attributes\n attrs = self.extra_host_attributes(hostname)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/omd/sites/wato/lib/python3/cmk/base/config.py\", line 2353, in extra_host_attributes\n values = self.ruleset_matcher.get_host_values(host_name, ruleset)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py\", line 254, in get_host_values\n self.ruleset_optimizer.get_host_ruleset(ruleset, with_foreign_hosts)\n File \"/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py\", line 581, in get_host_ruleset\n return self.__host_ruleset_cache.setdefault(cache_id, _impl(ruleset, with_foreign_hosts))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py\", line 572, in _impl\n for hostname in self._all_matching_hosts(rule[\"condition\"], with_foreign_hosts):\n ~~~~^^^^^^^^^^^^^\nTypeError: tuple indices must be integers or slices, not str\n\nTraceback (most recent call last):\n File \"/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py\", line 2177, in _hosts_worker\n hosts_data = _compute_worker_hosts_data(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py\", line 2065, in _compute_worker_hosts_data\n helper_config_manager.get_host_data(\n File \"/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py\", line 3050, in get_host_data\n host_class(config_cache, hostname, hosts_config, passwords, ip_address_of),\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/omd/sites/wato/lib/python3/cmk/base/cee/microcore_config.py\", line 1320, in __init__\n host_attrs=config_cache.get_host_attributes(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/omd/sites/wato/lib/python3/cmk/base/config.py\", line 3521, in get_host_attributes\n attrs = self.extra_host_attributes(hostname)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/omd/sites/wato/lib/python3/cmk/base/config.py\", line 2353, in extra_host_attributes\n values = self.ruleset_matcher.get_host_values(host_name, ruleset)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py\", line 254, in get_host_values\n self.ruleset_optimizer.get_host_ruleset(ruleset, with_foreign_hosts)\n File \"/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py\", line 581, in get_host_ruleset\n return self.__host_ruleset_cache.setdefault(cache_id, _impl(ruleset, with_foreign_hosts))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/omd/sites/wato/lib/python3/cmk/utils/rulesets/ruleset_matcher.py\", line 572, in _impl\n for hostname in self._all_matching_hosts(rule[\"condition\"], with_foreign_hosts):\n ~~~~^^^^^^^^^^^^^\nTypeError: tuple indices must be integers or slices, not str\n",
"id": "433666fc-7907-11f1-bb85-005056bd0e74",
"local_vars": "eydfJzogPFByb2Nlc3MgbmFtZT0nUHJvY2Vzcy02JyBwaWQ9NTkzMjQ5IHBhcmVudD01OTMwOTIgc3RvcHBlZCBleGl0Y29kZT0wPiwKICdlbnRyaWVzJzogWyhbJ3NsYTEzLjA4X3ZrJywKICAgICAgICAgICAgICAgJ3NsYTEzLjEyX3ZrJywKICAgICAgICAgICAgICAgJ20wODVfc3RhbmRvcnRlX3dzdGYnLAogICAgICAgICAgICAgICAnbTAyMl9zbGFfd3N0ZicsCiAgICAgICAgICAgICAgICdtMDEwX3N0YW5kb3J0ZV9tZCcsCiAgICAgICAgICAgICAgICdtMDg1X3N0YW5kb3J0ZV9ic2gnLAogICAgICAgICAgICAgICAndjk3MWwwMjAnLAogICAgICAgICAgICAgICAndjk3NmwwMjAnLAogICAgICAgICAgICAgICAnc2xhMDEuMDFfcnZkaWFsb2cnXSwKICAgICAgICAgICAgICBOb25lLAogICAgICAgICAgICAgIDApLAogICAgICAgICAgICAgKFsnbTAyMl9zZXJ2aWNlbW9uaXRvcmluZycsCiAgICAgICAgICAgICAgICdtMTAwX2JldHJpZWItc3RhbmRhcmRhbndlbmR1bmdlbicsCiAgICAgICAgICAgICAgICdzbGExMy4wMV9pbnRyYW5ldCcsCiAgICAgICAgICAgICAgICd2OTcwbDAwOCcsCiAgICAgICAgICAgICAgICdtMDEwX3N0YW5kb3J0ZV9ic2gnLAogICAgICAgICAgICAgICAnc2xhMDMuMDFfcnZzbWQnLAogICAgICAgICAgICAgICAnc2xhMDIuMDJfcnZzY2FuJywKICAgICAgICAgICAgICAgJ3NsYTEzLjE1X3ZrJywKICAgICAgICAgICAgICAgJ20wODVfc3RhbmRvcnRlX3JobCddLAogICAgICAgICAgICAgIE5vbmUsCiAgICAgICAgICAgICAgMSksCiAgICAgICAgICAgICAoWydtMDU2X2l0LWdlYmFldWRlbWFuYWdlbWVudF9ub3JkJywKICAgICAgICAgICAgICAgJ3NsYTEzLjE2X3ZrJywKICAgICAgICAgICAgICAgJ3NsYTA1LjAxX3J2cmVncmVzcycsCiAgICAgICAgICAgICAgICdtMDIyX3NsYV9ic2gnLAogICAgICAgICAgICAgICAnbTAyNV9zdy1tYW5hZ2VtZW50JywKICAgICAgICAgICAgICAgJ3NsYTAyLjAxX3J2cHVyJywKICAgICAgICAgICAgICAgJ20wMjJfc2xhX2V4dCcsCiAgICAgICAgICAgICAgICdzbGExMy4wNV9tZG0nLAogICAgICAgICAgICAgICAnbTAxMF9zdGFuZG9ydGVfbm9yZCddLAogICAgICAgICAgICAgIE5vbmUsCiAgICAgICAgICAgICAgMiksCiAgICAgICAgICAgICAoWydtMDU2X2l0LWdlYmFldWRlbWFuYWdlbWVudF9ic2gnLAogICAgICAgICAgICAgICAnbTA1Nl9pdC1nZWJhZXVkZW1hbmFnZW1lbnRfd3N0ZicsCiAgICAgICAgICAgICAgICdzbGExMy4wN192aycsCiAgICAgICAgICAgICAgICdtMDU2X2l0LWdlYmFldWRlbWFuYWdlbWVudF9tZCcsCiAgICAgICAgICAgICAgICdtMDg1X3N0YW5kb3J0ZV9tZCcsCiAgICAgICAgICAgICAgICdtMDIyX3NsYV9yaGwnLAogICAgICAgICAgICAgICAndjk3MGwxNzInLAogICAgICAgICAgICAgICAnbTAxMF9zdGFuZG9ydGVfd3N0ZicsCiAgICAgICAgICAgICAgICd2OTc0bDAyMCddLAogICAgICAgICAgICAgIE5vbmUsCiAgICAgICAgICAgICAgMyksCiAgICAgICAgICAgICAoWydtMDIyX3NsYV9tZCcsCiAgICAgICAgICAgICAgICdzbGExMy4xMV92aycsCiAgICAgICAgICAgICAgICdtMDEwX3N0YW5kb3J0ZV9yaGwnLAogICAgICAgICAgICAgICAndjk3MWwwMDgnLAogICAgICAgICAgICAgICAnc2xhMTMuMTRfdmsnLAogICAgICAgICAgICAgICAnc2xhMDQuMDFfcnZ0ZXh0JywKICAgICAgICAgICAgICAgJ20wNTZfaXQtZ2ViYWV1ZGVtYW5hZ2VtZW50X3JobCcsCiAgICAgICAgICAgICAgICdzbGEwOS4wM19hc3lzLm5ldCcsCiAgICAgICAgICAgICAgICdtMDg1X3N0YW5kb3J0ZV9ub3JkJ10sCiAgICAgICAgICAgICAgTm9uZSwKICAgICAgICAgICAgICA0KSwKICAgICAgICAgICAgIChbJ3Y5N3hsazI3JywKICAgICAgICAgICAgICAgJ3NsYTAwLjA3X3JlbW90ZV9hY2Nlc3Nfb2xkZW5idXJnLWJyZW1lbicsCiAgICAgICAgICAgICAgICdzbGEwMC4wM192cG4tZWlud2FobF9iZXJsaW4tYnJhbmRlbmJ1cmcnLAogICAgICAgICAgICAgICAnc2xhMTMuMDJfbm90ZXMnLAogICAgICAgICAgICAgICAnc2xhMTMuMDlfdmsnLAogICAgICAgICAgICAgICAnbTAyMl9zbGFfbm9yZCcsCiAgICAgICAgICAgICAgICd2OTc3bDAyMCcsCiAgICAgICAgICAgICAgICdzbGExMy4xMF92aycsCiAgICAgICAgICAgICAgICdzbGExMy4xM192aycsCiAgICAgICAgICAgICAgICdzbGExMC4wMV9lYmFua2luZycsCiAgICAgICAgICAgICAgICdtMDIyX3NsYV9vbGhiJywKICAgICAgICAgICAgICAgJ3NsYTEwLjA0X3J2bG1zJywKICAgICAgICAgICAgICAgJ3NsYTEwLjAyX2dpcyddLAogICAgICAgICAgICAgIE5vbmUsCiAgICAgICAgICAgICAgNSldLAogJ2VudHJ5JzogKFsndjk3eGxrMjcnLAogICAgICAgICAgICAnc2xhMDAuMDdfcmVtb3RlX2FjY2Vzc19vbGRlbmJ1cmctYnJlbWVuJywKICAgICAgICAgICAgJ3NsYTAwLjAzX3Zwbi1laW53YWhsX2Jlcmxpbi1icmFuZGVuYnVyZycsCiAgICAgICAgICAgICdzbGExMy4wMl9ub3RlcycsCiAgICAgICAgICAgICdzbGExMy4wOV92aycsCiAgICAgICAgICAgICdtMDIyX3NsYV9ub3JkJywKICAgICAgICAgICAgJ3Y5NzdsMDIwJywKICAgICAgICAgICAgJ3NsYTEzLjEwX3ZrJywKICAgICAgICAgICAgJ3NsYTEzLjEzX3ZrJywKICAgICAgICAgICAgJ3NsYTEwLjAxX2ViYW5raW5nJywKICAgICAgICAgICAgJ20wMjJfc2xhX29saGInLAogICAgICAgICAgICAnc2xhMTAuMDRfcnZsbXMnLAogICAgICAgICAgICAnc2xhMTAuMDJfZ2lzJ10sCiAgICAgICAgICAgTm9uZSwKICAgICAgICAgICA1KSwKICdlcnJvcnMnOiBbRXhjZXB0aW9uKCdUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6XG4gIEZpbGUgIi9vbWQvc2l0ZXMvd2F0by9saWIvcHl0aG9uMy9jbWsvYmFzZS9jZWUvbWljcm9jb3JlX2NvbmZpZy5weSIsIGxpbmUgMjE3NywgaW4gX2hvc3RzX3dvcmtlclxuICAgIGhvc3RzX2RhdGEgPSBfY29tcHV0ZV93b3JrZXJfaG9zdHNfZGF0YShcbiAgICAgICAgICAgICAgICAgXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXG4gIEZpbGUgIi9vbWQvc2l0ZXMvd2F0by9saWIvcHl0aG9uMy9jbWsvYmFzZS9jZWUvbWljcm9jb3JlX2NvbmZpZy5weSIsIGxpbmUgMjA2NSwgaW4gX2NvbXB1dGVfd29ya2VyX2hvc3RzX2RhdGFcbiAgICBoZWxwZXJfY29uZmlnX21hbmFnZXIuZ2V0X2hvc3RfZGF0YShcbiAgRmlsZSAiL29tZC9zaXRlcy93YXRvL2xpYi9weXRob24zL2Ntay9iYXNlL2NlZS9taWNyb2NvcmVfY29uZmlnLnB5IiwgbGluZSAzMDUwLCBpbiBnZXRfaG9zdF9kYXRhXG4gICAgaG9zdF9jbGFzcyhjb25maWdfY2FjaGUsIGhvc3RuYW1lLCBob3N0c19jb25maWcsIHBhc3N3b3JkcywgaXBfYWRkcmVzc19vZiksXG4gICAgXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5cbiAgRmlsZSAiL29tZC9zaXRlcy93YXRvL2xpYi9weXRob24zL2Ntay9iYXNlL2NlZS9taWNyb2NvcmVfY29uZmlnLnB5IiwgbGluZSAxMzIwLCBpbiBfX2luaXRfX1xuICAgIGhvc3RfYXR0cnM9Y29uZmlnX2NhY2hlLmdldF9ob3N0X2F0dHJpYnV0ZXMoXG4gICAgICAgICAgICAgICBeXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5cbiAgRmlsZSAiL29tZC9zaXRlcy93YXRvL2xpYi9weXRob24zL2Ntay9iYXNlL2NvbmZpZy5weSIsIGxpbmUgMzUyMSwgaW4gZ2V0X2hvc3RfYXR0cmlidXRlc1xuICAgIGF0dHJzID0gc2VsZi5leHRyYV9ob3N0X2F0dHJpYnV0ZXMoaG9zdG5hbWUpXG4gICAgICAgICAgICBeXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5cbiAgRmlsZSAiL29tZC9zaXRlcy93YXRvL2xpYi9weXRob24zL2Ntay9iYXNlL2NvbmZpZy5weSIsIGxpbmUgMjM1MywgaW4gZXh0cmFfaG9zdF9hdHRyaWJ1dGVzXG4gICAgdmFsdWVzID0gc2VsZi5ydWxlc2V0X21hdGNoZXIuZ2V0X2hvc3RfdmFsdWVzKGhvc3RfbmFtZSwgcnVsZXNldClcbiAgICAgICAgICAgICBeXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXlxuICBGaWxlICIvb21kL3NpdGVzL3dhdG8vbGliL3B5dGhvbjMvY21rL3V0aWxzL3J1bGVzZXRzL3J1bGVzZXRfbWF0Y2hlci5weSIsIGxpbmUgMjU0LCBpbiBnZXRfaG9zdF92YWx1ZXNcbiAgICBzZWxmLnJ1bGVzZXRfb3B0aW1pemVyLmdldF9ob3N0X3J1bGVzZXQocnVsZXNldCwgd2l0aF9mb3JlaWduX2hvc3RzKVxuICBGaWxlICIvb21kL3NpdGVzL3dhdG8vbGliL3B5dGhvbjMvY21rL3V0aWxzL3J1bGVzZXRzL3J1bGVzZXRfbWF0Y2hlci5weSIsIGxpbmUgNTgxLCBpbiBnZXRfaG9zdF9ydWxlc2V0XG4gICAgcmV0dXJuIHNlbGYuX19ob3N0X3J1bGVzZXRfY2FjaGUuc2V0ZGVmYXVsdChjYWNoZV9pZCwgX2ltcGwocnVsZXNldCwgd2l0aF9mb3JlaWduX2hvc3RzKSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXG4gIEZpbGUgIi9vbWQvc2l0ZXMvd2F0by9saWIvcHl0aG9uMy9jbWsvdXRpbHMvcnVsZXNldHMvcnVsZXNldF9tYXRjaGVyLnB5IiwgbGluZSA1NzIsIGluIF9pbXBsXG4gICAgZm9yIGhvc3RuYW1lIGluIHNlbGYuX2FsbF9tYXRjaGluZ19ob3N0cyhydWxlWyJjb25kaXRpb24iXSwgd2l0aF9mb3JlaWduX2hvc3RzKTpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH5+fn5eXl5eXl5eXl5eXl5eXG5UeXBlRXJyb3I6IHR1cGxlIGluZGljZXMgbXVzdCBiZSBpbnRlZ2VycyBvciBzbGljZXMsIG5vdCBzdHJcbicpLAogICAgICAgICAgICBFeGNlcHRpb24oJ1RyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KTpcbiAgRmlsZSAiL29tZC9zaXRlcy93YXRvL2xpYi9weXRob24zL2Ntay9iYXNlL2NlZS9taWNyb2NvcmVfY29uZmlnLnB5IiwgbGluZSAyMTc3LCBpbiBfaG9zdHNfd29ya2VyXG4gICAgaG9zdHNfZGF0YSA9IF9jb21wdXRlX3dvcmtlcl9ob3N0c19kYXRhKFxuICAgICAgICAgICAgICAgICBeXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5cbiAgRmlsZSAiL29tZC9zaXRlcy93YXRvL2xpYi9weXRob24zL2Ntay9iYXNlL2NlZS9taWNyb2NvcmVfY29uZmlnLnB5IiwgbGluZSAyMDY1LCBpbiBfY29tcHV0ZV93b3JrZXJfaG9zdHNfZGF0YVxuICAgIGhlbHBlcl9jb25maWdfbWFuYWdlci5nZXRfaG9zdF9kYXRhKFxuICBGaWxlICIvb21kL3NpdGVzL3dhdG8vbGliL3B5dGhvbjMvY21rL2Jhc2UvY2VlL21pY3JvY29yZV9jb25maWcucHkiLCBsaW5lIDMwNTAsIGluIGdldF9ob3N0X2RhdGFcbiAgICBob3N0X2NsYXNzKGNvbmZpZ19jYWNoZSwgaG9zdG5hbWUsIGhvc3RzX2NvbmZpZywgcGFzc3dvcmRzLCBpcF9hZGRyZXNzX29mKSxcbiAgICBeXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXlxuICBGaWxlICIvb21kL3NpdGVzL3dhdG8vbGliL3B5dGhvbjMvY21rL2Jhc2UvY2VlL21pY3JvY29yZV9jb25maWcucHkiLCBsaW5lIDEzMjAsIGluIF9faW5pdF9fXG4gICAgaG9zdF9hdHRycz1jb25maWdfY2FjaGUuZ2V0X2hvc3RfYXR0cmlidXRlcyhcbiAgICAgICAgICAgICAgIF5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXlxuICBGaWxlICIvb21kL3NpdGVzL3dhdG8vbGliL3B5dGhvbjMvY21rL2Jhc2UvY29uZmlnLnB5IiwgbGluZSAzNTIxLCBpbiBnZXRfaG9zdF9hdHRyaWJ1dGVzXG4gICAgYXR0cnMgPSBzZWxmLmV4dHJhX2hvc3RfYXR0cmlidXRlcyhob3N0bmFtZSlcbiAgICAgICAgICAgIF5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXlxuICBGaWxlICIvb21kL3NpdGVzL3dhdG8vbGliL3B5dGhvbjMvY21rL2Jhc2UvY29uZmlnLnB5IiwgbGluZSAyMzUzLCBpbiBleHRyYV9ob3N0X2F0dHJpYnV0ZXNcbiAgICB2YWx1ZXMgPSBzZWxmLnJ1bGVzZXRfbWF0Y2hlci5nZXRfaG9zdF92YWx1ZXMoaG9zdF9uYW1lLCBydWxlc2V0KVxuICAgICAgICAgICAgIF5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXG4gIEZpbGUgIi9vbWQvc2l0ZXMvd2F0by9saWIvcHl0aG9uMy9jbWsvdXRpbHMvcnVsZXNldHMvcnVsZXNldF9tYXRjaGVyLnB5IiwgbGluZSAyNTQsIGluIGdldF9ob3N0X3ZhbHVlc1xuICAgIHNlbGYucnVsZXNldF9vcHRpbWl6ZXIuZ2V0X2hvc3RfcnVsZXNldChydWxlc2V0LCB3aXRoX2ZvcmVpZ25faG9zdHMpXG4gIEZpbGUgIi9vbWQvc2l0ZXMvd2F0by9saWIvcHl0aG9uMy9jbWsvdXRpbHMvcnVsZXNldHMvcnVsZXNldF9tYXRjaGVyLnB5IiwgbGluZSA1ODEsIGluIGdldF9ob3N0X3J1bGVzZXRcbiAgICByZXR1cm4gc2VsZi5fX2hvc3RfcnVsZXNldF9jYWNoZS5zZXRkZWZhdWx0KGNhY2hlX2lkLCBfaW1wbChydWxlc2V0LCB3aXRoX2ZvcmVpZ25faG9zdHMpKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5cbiAgRmlsZSAiL29tZC9zaXRlcy93YXRvL2xpYi9weXRob24zL2Ntay91dGlscy9ydWxlc2V0cy9ydWxlc2V0X21hdGNoZXIucHkiLCBsaW5lIDU3MiwgaW4gX2ltcGxcbiAgICBmb3IgaG9zdG5hbWUgaW4gc2VsZi5fYWxsX21hdGNoaW5nX2hvc3RzKHJ1bGVbImNvbmRpdGlvbiJdLCB3aXRoX2ZvcmVpZ25faG9zdHMpOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfn5+fl5eXl5eXl5eXl5eXl5cblR5cGVFcnJvcjogdHVwbGUgaW5kaWNlcyBtdXN0IGJlIGludGVnZXJzIG9yIHNsaWNlcywgbm90IHN0clxuJyksCiAgICAgICAgICAgIEV4Y2VwdGlvbignVHJhY2ViYWNrIChtb3N0IHJlY2VudCBjYWxsIGxhc3QpOlxuICBGaWxlICIvb21kL3NpdGVzL3dhdG8vbGliL3B5dGhvbjMvY21rL2Jhc2UvY2VlL21pY3JvY29yZV9jb25maWcucHkiLCBsaW5lIDIxNzcsIGluIF9ob3N0c193b3JrZXJcbiAgICBob3N0c19kYXRhID0gX2NvbXB1dGVfd29ya2VyX2hvc3RzX2RhdGEoXG4gICAgICAgICAgICAgICAgIF5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXlxuICBGaWxlICIvb21kL3NpdGVzL3dhdG8vbGliL3B5dGhvbjMvY21rL2Jhc2UvY2VlL21pY3JvY29yZV9jb25maWcucHkiLCBsaW5lIDIwNjUsIGluIF9jb21wdXRlX3dvcmtlcl9ob3N0c19kYXRhXG4gICAgaGVscGVyX2NvbmZpZ19tYW5hZ2VyLmdldF9ob3N0X2RhdGEoXG4gIEZpbGUgIi9vbWQvc2l0ZXMvd2F0by9saWIvcHl0aG9uMy9jbWsvYmFzZS9jZWUvbWljcm9jb3JlX2NvbmZpZy5weSIsIGxpbmUgMzA1MCwgaW4gZ2V0X2hvc3RfZGF0YVxuICAgIGhvc3RfY2xhc3MoY29uZmlnX2NhY2hlLCBob3N0bmFtZSwgaG9zdHNfY29uZmlnLCBwYXNzd29yZHMsIGlwX2FkZHJlc3Nfb2YpLFxuICAgIF5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXG4gIEZpbGUgIi9vbWQvc2l0ZXMvd2F0by9saWIvcHl0aG9uMy9jbWsvYmFzZS9jZWUvbWljcm9jb3JlX2NvbmZpZy5weSIsIGxpbmUgMTMyMCwgaW4gX19pbml0X19cbiAgICBob3N0X2F0dHJzPWNvbmZpZ19jYWNoZS5nZXRfaG9zdF9hdHRyaWJ1dGVzKFxuICAgICAgICAgICAgICAgXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXG4gIEZpbGUgIi9vbWQvc2l0ZXMvd2F0by9saWIvcHl0aG9uMy9jbWsvYmFzZS9jb25maWcucHkiLCBsaW5lIDM1MjEsIGluIGdldF9ob3N0X2F0dHJpYnV0ZXNcbiAgICBhdHRycyA9IHNlbGYuZXh0cmFfaG9zdF9hdHRyaWJ1dGVzKGhvc3RuYW1lKVxuICAgICAgICAgICAgXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXG4gIEZpbGUgIi9vbWQvc2l0ZXMvd2F0by9saWIvcHl0aG9uMy9jbWsvYmFzZS9jb25maWcucHkiLCBsaW5lIDIzNTMsIGluIGV4dHJhX2hvc3RfYXR0cmlidXRlc1xuICAgIHZhbHVlcyA9IHNlbGYucnVsZXNldF9tYXRjaGVyLmdldF9ob3N0X3ZhbHVlcyhob3N0X25hbWUsIHJ1bGVzZXQpXG4gICAgICAgICAgICAgXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5cbiAgRmlsZSAiL29tZC9zaXRlcy93YXRvL2xpYi9weXRob24zL2Ntay91dGlscy9ydWxlc2V0cy9ydWxlc2V0X21hdGNoZXIucHkiLCBsaW5lIDI1NCwgaW4gZ2V0X2hvc3RfdmFsdWVzXG4gICAgc2VsZi5ydWxlc2V0X29wdGltaXplci5nZXRfaG9zdF9ydWxlc2V0KHJ1bGVzZXQsIHdpdGhfZm9yZWlnbl9ob3N0cylcbiAgRmlsZSAiL29tZC9zaXRlcy93YXRvL2xpYi9weXRob24zL2Ntay91dGlscy9ydWxlc2V0cy9ydWxlc2V0X21hdGNoZXIucHkiLCBsaW5lIDU4MSwgaW4gZ2V0X2hvc3RfcnVsZXNldFxuICAgIHJldHVybiBzZWxmLl9faG9zdF9ydWxlc2V0X2NhY2hlLnNldGRlZmF1bHQoY2FjaGVfaWQsIF9pbXBsKHJ1bGVzZXQsIHdpdGhfZm9yZWlnbl9ob3N0cykpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXlxuICBGaWxlICIvb21kL3NpdGVzL3dhdG8vbGliL3B5dGhvbjMvY21rL3V0aWxzL3J1bGVzZXRzL3J1bGVzZXRfbWF0Y2hlci5weSIsIGxpbmUgNTcyLCBpbiBfaW1wbFxuICAgIGZvciBob3N0bmFtZSBpbiBzZWxmLl9hbGxfbWF0Y2hpbmdfaG9zdHMocnVsZVsiY29uZGl0aW9uIl0sIHdpdGhfZm9yZWlnbl9ob3N0cyk6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB+fn5+Xl5eXl5eXl5eXl5eXlxuVHlwZUVycm9yOiB0dXBsZSBpbmRpY2VzIG11c3QgYmUgaW50ZWdlcnMgb3Igc2xpY2VzLCBub3Qgc3RyXG4nKSwKICAgICAgICAgICAgRXhjZXB0aW9uKCdUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6XG4gIEZpbGUgIi9vbWQvc2l0ZXMvd2F0by9saWIvcHl0aG9uMy9jbWsvYmFzZS9jZWUvbWljcm9jb3JlX2NvbmZpZy5weSIsIGxpbmUgMjE3NywgaW4gX2hvc3RzX3dvcmtlclxuICAgIGhvc3RzX2RhdGEgPSBfY29tcHV0ZV93b3JrZXJfaG9zdHNfZGF0YShcbiAgICAgICAgICAgICAgICAgXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXG4gIEZpbGUgIi9vbWQvc2l0ZXMvd2F0by9saWIvcHl0aG9uMy9jbWsvYmFzZS9jZWUvbWljcm9jb3JlX2NvbmZpZy5weSIsIGxpbmUgMjA2NSwgaW4gX2NvbXB1dGVfd29ya2VyX2hvc3RzX2RhdGFcbiAgICBoZWxwZXJfY29uZmlnX21hbmFnZXIuZ2V0X2hvc3RfZGF0YShcbiAgRmlsZSAiL29tZC9zaXRlcy93YXRvL2xpYi9weXRob24zL2Ntay9iYXNlL2NlZS9taWNyb2NvcmVfY29uZmlnLnB5IiwgbGluZSAzMDUwLCBpbiBnZXRfaG9zdF9kYXRhXG4gICAgaG9zdF9jbGFzcyhjb25maWdfY2FjaGUsIGhvc3RuYW1lLCBob3N0c19jb25maWcsIHBhc3N3b3JkcywgaXBfYWRkcmVzc19vZiksXG4gICAgXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5cbiAgRmlsZSAiL29tZC9zaXRlcy93YXRvL2xpYi9weXRob24zL2Ntay9iYXNlL2NlZS9taWNyb2NvcmVfY29uZmlnLnB5IiwgbGluZSAxMzIwLCBpbiBfX2luaXRfX1xuICAgIGhvc3RfYXR0cnM9Y29uZmlnX2NhY2hlLmdldF9ob3N0X2F0dHJpYnV0ZXMoXG4gICAgICAgICAgICAgICBeXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5cbiAgRmlsZSAiL29tZC9zaXRlcy93YXRvL2xpYi9weXRob24zL2Ntay9iYXNlL2NvbmZpZy5weSIsIGxpbmUgMzUyMSwgaW4gZ2V0X2hvc3RfYXR0cmlidXRlc1xuICAgIGF0dHJzID0gc2VsZi5leHRyYV9ob3N0X2F0dHJpYnV0ZXMoaG9zdG5hbWUpXG4gICAgICAgICAgICBeXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5cbiAgRmlsZSAiL29tZC9zaXRlcy93YXRvL2xpYi9weXRob24zL2Ntay9iYXNlL2NvbmZpZy5weSIsIGxpbmUgMjM1MywgaW4gZXh0cmFfaG9zdF9hdHRyaWJ1dGVzXG4gICAgdmFsdWVzID0gc2VsZi5ydWxlc2V0X21hdGNoZXIuZ2V0X2hvc3RfdmFsdWVzKGhvc3RfbmFtZSwgcnVsZXNldClcbiAgICAgICAgICAgICBeXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXlxuICBGaWxlICIvb21kL3NpdGVzL3dhdG8vbGliL3B5dGhvbjMvY21rL3V0aWxzL3J1bGVzZXRzL3J1bGVzZXRfbWF0Y2hlci5weSIsIGxpbmUgMjU0LCBpbiBnZXRfaG9zdF92YWx1ZXNcbiAgICBzZWxmLnJ1bGVzZXRfb3B0aW1pemVyLmdldF9ob3N0X3J1bGVzZXQocnVsZXNldCwgd2l0aF9mb3JlaWduX2hvc3RzKVxuICBGaWxlICIvb21kL3NpdGVzL3dhdG8vbGliL3B5dGhvbjMvY21rL3V0aWxzL3J1bGVzZXRzL3J1bGVzZXRfbWF0Y2hlci5weSIsIGxpbmUgNTgxLCBpbiBnZXRfaG9zdF9ydWxlc2V0XG4gICAgcmV0dXJuIHNlbGYuX19ob3N0X3J1bGVzZXRfY2FjaGUuc2V0ZGVmYXVsdChjYWNoZV9pZCwgX2ltcGwocnVsZXNldCwgd2l0aF9mb3JlaWduX2hvc3RzKSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXG4gIEZpbGUgIi9vbWQvc2l0ZXMvd2F0by9saWIvcHl0aG9uMy9jbWsvdXRpbHMvcnVsZXNldHMvcnVsZXNldF9tYXRjaGVyLnB5IiwgbGluZSA1NzIsIGluIF9pbXBsXG4gICAgZm9yIGhvc3RuYW1lIGluIHNlbGYuX2FsbF9tYXRjaGluZ19ob3N0cyhydWxlWyJjb25kaXRpb24iXSwgd2l0aF9mb3JlaWduX2hvc3RzKTpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH5+fn5eXl5eXl5eXl5eXl5eXG5UeXBlRXJyb3I6IHR1cGxlIGluZGljZXMgbXVzdCBiZSBpbnRlZ2VycyBvciBzbGljZXMsIG5vdCBzdHJcbicpLAogICAgICAgICAgICBFeGNlcHRpb24oJ1RyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KTpcbiAgRmlsZSAiL29tZC9zaXRlcy93YXRvL2xpYi9weXRob24zL2Ntay9iYXNlL2NlZS9taWNyb2NvcmVfY29uZmlnLnB5IiwgbGluZSAyMTc3LCBpbiBfaG9zdHNfd29ya2VyXG4gICAgaG9zdHNfZGF0YSA9IF9jb21wdXRlX3dvcmtlcl9ob3N0c19kYXRhKFxuICAgICAgICAgICAgICAgICBeXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5cbiAgRmlsZSAiL29tZC9zaXRlcy93YXRvL2xpYi9weXRob24zL2Ntay9iYXNlL2NlZS9taWNyb2NvcmVfY29uZmlnLnB5IiwgbGluZSAyMDY1LCBpbiBfY29tcHV0ZV93b3JrZXJfaG9zdHNfZGF0YVxuICAgIGhlbHBlcl9jb25maWdfbWFuYWdlci5nZXRfaG9zdF9kYXRhKFxuICBGaWxlICIvb21kL3NpdGVzL3dhdG8vbGliL3B5dGhvbjMvY21rL2Jhc2UvY2VlL21pY3JvY29yZV9jb25maWcucHkiLCBsaW5lIDMwNTAsIGluIGdldF9ob3N0X2RhdGFcbiAgICBob3N0X2NsYXNzKGNvbmZpZ19jYWNoZSwgaG9zdG5hbWUsIGhvc3RzX2NvbmZpZywgcGFzc3dvcmRzLCBpcF9hZGRyZXNzX29mKSxcbiAgICBeXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXlxuICBGaWxlICIvb21kL3NpdGVzL3dhdG8vbGliL3B5dGhvbjMvY21rL2Jhc2UvY2VlL21pY3JvY29yZV9jb25maWcucHkiLCBsaW5lIDEzMjAsIGluIF9faW5pdF9fXG4gICAgaG9zdF9hdHRycz1jb25maWdfY2FjaGUuZ2V0X2hvc3RfYXR0cmlidXRlcyhcbiAgICAgICAgICAgICAgIF5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXlxuICBGaWxlICIvb21kL3NpdGVzL3dhdG8vbGliL3B5dGhvbjMvY21rL2Jhc2UvY29uZmlnLnB5IiwgbGluZSAzNTIxLCBpbiBnZXRfaG9zdF9hdHRyaWJ1dGVzXG4gICAgYXR0cnMgPSBzZWxmLmV4dHJhX2hvc3RfYXR0cmlidXRlcyhob3N0bmFtZSlcbiAgICAgICAgICAgIF5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXlxuICBGaWxlICIvb21kL3NpdGVzL3dhdG8vbGliL3B5dGhvbjMvY21rL2Jhc2UvY29uZmlnLnB5IiwgbGluZSAyMzUzLCBpbiBleHRyYV9ob3N0X2F0dHJpYnV0ZXNcbiAgICB2YWx1ZXMgPSBzZWxmLnJ1bGVzZXRfbWF0Y2hlci5nZXRfaG9zdF92YWx1ZXMoaG9zdF9uYW1lLCBydWxlc2V0KVxuICAgICAgICAgICAgIF5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXG4gIEZpbGUgIi9vbWQvc2l0ZXMvd2F0by9saWIvcHl0aG9uMy9jbWsvdXRpbHMvcnVsZXNldHMvcnVsZXNldF9tYXRjaGVyLnB5IiwgbGluZSAyNTQsIGluIGdldF9ob3N0X3ZhbHVlc1xuICAgIHNlbGYucnVsZXNldF9vcHRpbWl6ZXIuZ2V0X2hvc3RfcnVsZXNldChydWxlc2V0LCB3aXRoX2ZvcmVpZ25faG9zdHMpXG4gIEZpbGUgIi9vbWQvc2l0ZXMvd2F0by9saWIvcHl0aG9uMy9jbWsvdXRpbHMvcnVsZXNldHMvcnVsZXNldF9tYXRjaGVyLnB5IiwgbGluZSA1ODEsIGluIGdldF9ob3N0X3J1bGVzZXRcbiAgICByZXR1cm4gc2VsZi5fX2hvc3RfcnVsZXNldF9jYWNoZS5zZXRkZWZhdWx0KGNhY2hlX2lkLCBfaW1wbChydWxlc2V0LCB3aXRoX2ZvcmVpZ25faG9zdHMpKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5cbiAgRmlsZSAiL29tZC9zaXRlcy93YXRvL2xpYi9weXRob24zL2Ntay91dGlscy9ydWxlc2V0cy9ydWxlc2V0X21hdGNoZXIucHkiLCBsaW5lIDU3MiwgaW4gX2ltcGxcbiAgICBmb3IgaG9zdG5hbWUgaW4gc2VsZi5fYWxsX21hdGNoaW5nX2hvc3RzKHJ1bGVbImNvbmRpdGlvbiJdLCB3aXRoX2ZvcmVpZ25faG9zdHMpOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfn5+fl5eXl5eXl5eXl5eXl5cblR5cGVFcnJvcjogdHVwbGUgaW5kaWNlcyBtdXN0IGJlIGludGVnZXJzIG9yIHNsaWNlcywgbm90IHN0clxuJyksCiAgICAgICAgICAgIEV4Y2VwdGlvbignVHJhY2ViYWNrIChtb3N0IHJlY2VudCBjYWxsIGxhc3QpOlxuICBGaWxlICIvb21kL3NpdGVzL3dhdG8vbGliL3B5dGhvbjMvY21rL2Jhc2UvY2VlL21pY3JvY29yZV9jb25maWcucHkiLCBsaW5lIDIxNzcsIGluIF9ob3N0c193b3JrZXJcbiAgICBob3N0c19kYXRhID0gX2NvbXB1dGVfd29ya2VyX2hvc3RzX2RhdGEoXG4gICAgICAgICAgICAgICAgIF5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXlxuICBGaWxlICIvb21kL3NpdGVzL3dhdG8vbGliL3B5dGhvbjMvY21rL2Jhc2UvY2VlL21pY3JvY29yZV9jb25maWcucHkiLCBsaW5lIDIwNjUsIGluIF9jb21wdXRlX3dvcmtlcl9ob3N0c19kYXRhXG4gICAgaGVscGVyX2NvbmZpZ19tYW5hZ2VyLmdldF9ob3N0X2RhdGEoXG4gIEZpbGUgIi9vbWQvc2l0ZXMvd2F0by9saWIvcHl0aG9uMy9jbWsvYmFzZS9jZWUvbWljcm9jb3JlX2NvbmZpZy5weSIsIGxpbmUgMzA1MCwgaW4gZ2V0X2hvc3RfZGF0YVxuICAgIGhvc3RfY2xhc3MoY29uZmlnX2NhY2hlLCBob3N0bmFtZSwgaG9zdHNfY29uZmlnLCBwYXNzd29yZHMsIGlwX2FkZHJlc3Nfb2YpLFxuICAgIF5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXG4gIEZpbGUgIi9vbWQvc2l0ZXMvd2F0by9saWIvcHl0aG9uMy9jbWsvYmFzZS9jZWUvbWljcm9jb3JlX2NvbmZpZy5weSIsIGxpbmUgMTMyMCwgaW4gX19pbml0X19cbiAgICBob3N0X2F0dHJzPWNvbmZpZ19jYWNoZS5nZXRfaG9zdF9hdHRyaWJ1dGVzKFxuICAgICAgICAgICAgICAgXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXG4gIEZpbGUgIi9vbWQvc2l0ZXMvd2F0by9saWIvcHl0aG9uMy9jbWsvYmFzZS9jb25maWcucHkiLCBsaW5lIDM1MjEsIGluIGdldF9ob3N0X2F0dHJpYnV0ZXNcbiAgICBhdHRycyA9IHNlbGYuZXh0cmFfaG9zdF9hdHRyaWJ1dGVzKGhvc3RuYW1lKVxuICAgICAgICAgICAgXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXG4gIEZpbGUgIi9vbWQvc2l0ZXMvd2F0by9saWIvcHl0aG9uMy9jbWsvYmFzZS9jb25maWcucHkiLCBsaW5lIDIzNTMsIGluIGV4dHJhX2hvc3RfYXR0cmlidXRlc1xuICAgIHZhbHVlcyA9IHNlbGYucnVsZXNldF9tYXRjaGVyLmdldF9ob3N0X3ZhbHVlcyhob3N0X25hbWUsIHJ1bGVzZXQpXG4gICAgICAgICAgICAgXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5cbiAgRmlsZSAiL29tZC9zaXRlcy93YXRvL2xpYi9weXRob24zL2Ntay91dGlscy9ydWxlc2V0cy9ydWxlc2V0X21hdGNoZXIucHkiLCBsaW5lIDI1NCwgaW4gZ2V0X2hvc3RfdmFsdWVzXG4gICAgc2VsZi5ydWxlc2V0X29wdGltaXplci5nZXRfaG9zdF9ydWxlc2V0KHJ1bGVzZXQsIHdpdGhfZm9yZWlnbl9ob3N0cylcbiAgRmlsZSAiL29tZC9zaXRlcy93YXRvL2xpYi9weXRob24zL2Ntay91dGlscy9ydWxlc2V0cy9ydWxlc2V0X21hdGNoZXIucHkiLCBsaW5lIDU4MSwgaW4gZ2V0X2hvc3RfcnVsZXNldFxuICAgIHJldHVybiBzZWxmLl9faG9zdF9ydWxlc2V0X2NhY2hlLnNldGRlZmF1bHQoY2FjaGVfaWQsIF9pbXBsKHJ1bGVzZXQsIHdpdGhfZm9yZWlnbl9ob3N0cykpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXlxuICBGaWxlICIvb21kL3NpdGVzL3dhdG8vbGliL3B5dGhvbjMvY21rL3V0aWxzL3J1bGVzZXRzL3J1bGVzZXRfbWF0Y2hlci5weSIsIGxpbmUgNTcyLCBpbiBfaW1wbFxuICAgIGZvciBob3N0bmFtZSBpbiBzZWxmLl9hbGxfbWF0Y2hpbmdfaG9zdHMocnVsZVsiY29uZGl0aW9uIl0sIHdpdGhfZm9yZWlnbl9ob3N0cyk6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB+fn5+Xl5eXl5eXl5eXl5eXlxuVHlwZUVycm9yOiB0dXBsZSBpbmRpY2VzIG11c3QgYmUgaW50ZWdlcnMgb3Igc2xpY2VzLCBub3Qgc3RyXG4nKV0sCiAnZnVuY190b19jYWxsJzogPGZ1bmN0aW9uIF9jb21wdXRlX2hvc3RzX2NvbmZpZ3VyYXRpb25zLjxsb2NhbHM+LnBhcnRpYWxfaG9zdHNfd29ya2VyIGF0IDB4N2ZiMDY2ZjBiYzQwPiwKICdwJzogPFByb2Nlc3MgbmFtZT0nUHJvY2Vzcy02JyBwaWQ9NTkzMjQ5IHBhcmVudD01OTMwOTIgc3RvcHBlZCBleGl0Y29kZT0wPiwKICdwcm9jZXNzZXMnOiBbPFByb2Nlc3MgbmFtZT0nUHJvY2Vzcy0xJyBwaWQ9NTkzMjQwIHBhcmVudD01OTMwOTIgc3RvcHBlZCBleGl0Y29kZT0wPiwKICAgICAgICAgICAgICAgPFByb2Nlc3MgbmFtZT0nUHJvY2Vzcy0yJyBwaWQ9NTkzMjQxIHBhcmVudD01OTMwOTIgc3RvcHBlZCBleGl0Y29kZT0wPiwKICAgICAgICAgICAgICAgPFByb2Nlc3MgbmFtZT0nUHJvY2Vzcy0zJyBwaWQ9NTkzMjQzIHBhcmVudD01OTMwOTIgc3RvcHBlZCBleGl0Y29kZT0wPiwKICAgICAgICAgICAgICAgPFByb2Nlc3MgbmFtZT0nUHJvY2Vzcy00JyBwaWQ9NTkzMjQ1IHBhcmVudD01OTMwOTIgc3RvcHBlZCBleGl0Y29kZT0wPiwKICAgICAgICAgICAgICAgPFByb2Nlc3MgbmFtZT0nUHJvY2Vzcy01JyBwaWQ9NTkzMjQ3IHBhcmVudD01OTMwOTIgc3RvcHBlZCBleGl0Y29kZT0wPiwKICAgICAgICAgICAgICAgPFByb2Nlc3MgbmFtZT0nUHJvY2Vzcy02JyBwaWQ9NTkzMjQ5IHBhcmVudD01OTMwOTIgc3RvcHBlZCBleGl0Y29kZT0wPl0sCiAncSc6IDxtdWx0aXByb2Nlc3NpbmcucXVldWVzLlF1ZXVlIG9iamVjdCBhdCAweDdmYjA2NmQ1M2UzMD4sCiAncmV0JzogX1F1ZXVlV29ya2VyUmVzdWx0KHJlc3VsdD1Ob25lLAogICAgICAgICAgICAgICAgICAgICAgICAgICB3YXJuaW5ncz1bXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3I9RXhjZXB0aW9uKCdUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6XG4gIEZpbGUgIi9vbWQvc2l0ZXMvd2F0by9saWIvcHl0aG9uMy9jbWsvYmFzZS9jZWUvbWljcm9jb3JlX2NvbmZpZy5weSIsIGxpbmUgMjE3NywgaW4gX2hvc3RzX3dvcmtlclxuICAgIGhvc3RzX2RhdGEgPSBfY29tcHV0ZV93b3JrZXJfaG9zdHNfZGF0YShcbiAgICAgICAgICAgICAgICAgXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXG4gIEZpbGUgIi9vbWQvc2l0ZXMvd2F0by9saWIvcHl0aG9uMy9jbWsvYmFzZS9jZWUvbWljcm9jb3JlX2NvbmZpZy5weSIsIGxpbmUgMjA2NSwgaW4gX2NvbXB1dGVfd29ya2VyX2hvc3RzX2RhdGFcbiAgICBoZWxwZXJfY29uZmlnX21hbmFnZXIuZ2V0X2hvc3RfZGF0YShcbiAgRmlsZSAiL29tZC9zaXRlcy93YXRvL2xpYi9weXRob24zL2Ntay9iYXNlL2NlZS9taWNyb2NvcmVfY29uZmlnLnB5IiwgbGluZSAzMDUwLCBpbiBnZXRfaG9zdF9kYXRhXG4gICAgaG9zdF9jbGFzcyhjb25maWdfY2FjaGUsIGhvc3RuYW1lLCBob3N0c19jb25maWcsIHBhc3N3b3JkcywgaXBfYWRkcmVzc19vZiksXG4gICAgXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5cbiAgRmlsZSAiL29tZC9zaXRlcy93YXRvL2xpYi9weXRob24zL2Ntay9iYXNlL2NlZS9taWNyb2NvcmVfY29uZmlnLnB5IiwgbGluZSAxMzIwLCBpbiBfX2luaXRfX1xuICAgIGhvc3RfYXR0cnM9Y29uZmlnX2NhY2hlLmdldF9ob3N0X2F0dHJpYnV0ZXMoXG4gICAgICAgICAgICAgICBeXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5cbiAgRmlsZSAiL29tZC9zaXRlcy93YXRvL2xpYi9weXRob24zL2Ntay9iYXNlL2NvbmZpZy5weSIsIGxpbmUgMzUyMSwgaW4gZ2V0X2hvc3RfYXR0cmlidXRlc1xuICAgIGF0dHJzID0gc2VsZi5leHRyYV9ob3N0X2F0dHJpYnV0ZXMoaG9zdG5hbWUpXG4gICAgICAgICAgICBeXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5cbiAgRmlsZSAiL29tZC9zaXRlcy93YXRvL2xpYi9weXRob24zL2Ntay9iYXNlL2NvbmZpZy5weSIsIGxpbmUgMjM1MywgaW4gZXh0cmFfaG9zdF9hdHRyaWJ1dGVzXG4gICAgdmFsdWVzID0gc2VsZi5ydWxlc2V0X21hdGNoZXIuZ2V0X2hvc3RfdmFsdWVzKGhvc3RfbmFtZSwgcnVsZXNldClcbiAgICAgICAgICAgICBeXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXlxuICBGaWxlICIvb21kL3NpdGVzL3dhdG8vbGliL3B5dGhvbjMvY21rL3V0aWxzL3J1bGVzZXRzL3J1bGVzZXRfbWF0Y2hlci5weSIsIGxpbmUgMjU0LCBpbiBnZXRfaG9zdF92YWx1ZXNcbiAgICBzZWxmLnJ1bGVzZXRfb3B0aW1pemVyLmdldF9ob3N0X3J1bGVzZXQocnVsZXNldCwgd2l0aF9mb3JlaWduX2hvc3RzKVxuICBGaWxlICIvb21kL3NpdGVzL3dhdG8vbGliL3B5dGhvbjMvY21rL3V0aWxzL3J1bGVzZXRzL3J1bGVzZXRfbWF0Y2hlci5weSIsIGxpbmUgNTgxLCBpbiBnZXRfaG9zdF9ydWxlc2V0XG4gICAgcmV0dXJuIHNlbGYuX19ob3N0X3J1bGVzZXRfY2FjaGUuc2V0ZGVmYXVsdChjYWNoZV9pZCwgX2ltcGwocnVsZXNldCwgd2l0aF9mb3JlaWduX2hvc3RzKSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXG4gIEZpbGUgIi9vbWQvc2l0ZXMvd2F0by9saWIvcHl0aG9uMy9jbWsvdXRpbHMvcnVsZXNldHMvcnVsZXNldF9tYXRjaGVyLnB5IiwgbGluZSA1NzIsIGluIF9pbXBsXG4gICAgZm9yIGhvc3RuYW1lIGluIHNlbGYuX2FsbF9tYXRjaGluZ19ob3N0cyhydWxlWyJjb25kaXRpb24iXSwgd2l0aF9mb3JlaWduX2hvc3RzKTpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH5+fn5eXl5eXl5eXl5eXl5eXG5UeXBlRXJyb3I6IHR1cGxlIGluZGljZXMgbXVzdCBiZSBpbnRlZ2VycyBvciBzbGljZXMsIG5vdCBzdHJcbicpKSwKICd3YXJuaW5ncyc6IFtdfQ==",
"os": "Red Hat Enterprise Linux release 9.7 (Plow)",
"python_paths": [
"/opt/omd/versions/2.4.0p32.cee/bin",
"/omd/sites/wato/local/lib/python3",
"/omd/sites/wato/lib/python3/cloud",
"/omd/sites/wato/lib/python312.zip",
"/omd/sites/wato/lib/python3.12",
"/omd/sites/wato/lib/python3.12/lib-dynload",
"/omd/sites/wato/lib/python3.12/site-packages",
"/omd/sites/wato/lib/python3"
],
"python_version": "3.12.11 (main, Jun 6 2026, 01:53:33) [GCC 14.2.0]",
"time": 1783320752.451597,
"version": "2.4.0p32"
}
I’m thankfull for any help.
Thanks and best regards
Andre