def _convert_legacy_tuple_perfometers(perfometers): # type: (List[Union[LegacyPerfometer, Perfometer]]) -> None for index, perfometer in reversed(list(enumerate(perfometers))): if isinstance(perfometer, dict): continue if not isinstance(perfometer, tuple) or len(perfometer) != 2: raise MKGeneralException(_("Invalid perfometer declaration: %r") % perfometer) # Convert legacy tuple based perfometer perfometer_type, perfometer_args = perfometer[0], perfometer[1] if perfometer_type in ("dual", "stacked"): sub_performeters = perfometer_args[:] _convert_legacy_tuple_perfometers(sub_performeters) perfometers[index] = { "type": perfometer_type, "perfometers": sub_performeters, } elif perfometer_type == "linear" and len(perfometer_args) == 3: required, total, label = perfometer_args perfometers[index] = { "type": perfometer_type, "segments": required, "total": total, "label": label, } else: logger.warning(_("Could not convert perfometer to dict format: %r. Ignoring this one."), perfometer) perfometers.pop(index)
def pre_activate_changes_check_duplicate_host(hosts): addresses = {} for host_name, attrs in hosts.items(): if attrs["ipaddress"]: host_names = addresses.setdefault(attrs["ipaddress"], []) host_names.append(host_name) for address, host_names in addresses.items(): if len(host_names) > 1: message = "The IP address %s is used for multiple hosts: %s" % ( address, ", ".join(host_names)) html.show_warning(message) logger.warning(message)
def _get_alias_of_host(site, host_name): query = ("GET hosts\n" "Cache: reload\n" "Columns: alias\n" "Filter: name = %s" % livestatus.lqencode(host_name)) with sites.only_sites(site): try: return sites.live().query_value(query) except Exception as e: logger.warning("Could not determine alias of host %s on site %s: %s", host_name, site, e) if config.debug: raise return host_name
def get_alias_of_host(site_id: Optional[SiteId], host_name: str) -> str: query = ("GET hosts\n" "Cache: reload\n" "Columns: alias\n" "Filter: name = %s" % lqencode(host_name)) with only_sites(site_id): try: return live().query_value(query) except Exception as e: logger.warning( "Could not determine alias of host %s on site %s: %s", host_name, site_id, e, ) if config.debug: raise return host_name