From b0ae94feb9c43886f359ba4f40a14086442cf609 Mon Sep 17 00:00:00 2001 From: junboli Date: Wed, 13 Jun 2018 09:03:11 +0800 Subject: [PATCH] Add debug logs for weigher filters Add logs for weigher filters so that we can debug from the log. Change-Id: I95f6145c77028aee4cce310c7b2a9636fdeed5d8 --- cinder/scheduler/base_weight.py | 10 ++++++++++ cinder/scheduler/host_manager.py | 9 ++++++--- 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/cinder/scheduler/base_weight.py b/cinder/scheduler/base_weight.py index 0ea982ca888..bbd0bbae49e 100644 --- a/cinder/scheduler/base_weight.py +++ b/cinder/scheduler/base_weight.py @@ -19,11 +19,15 @@ Pluggable Weighing support import abc +from oslo_log import log as logging import six from cinder.scheduler import base_handler +LOG = logging.getLogger(__name__) + + def normalize(weight_list, minval=None, maxval=None): """Normalize the values in a list between 0 and 1.0. @@ -142,4 +146,10 @@ class BaseWeightHandler(base_handler.BaseHandler): obj = weighed_objs[i] obj.weight += weigher.weight_multiplier() * weight + LOG.debug("Weigher %(cls_name)s returned, " + "weigher value is {max: %(maxval)s, min: %(minval)s}", + {'cls_name': weigher_cls.__name__, + 'maxval': weigher.maxval, + 'minval': weigher.minval}) + return sorted(weighed_objs, key=lambda x: x.weight, reverse=True) diff --git a/cinder/scheduler/host_manager.py b/cinder/scheduler/host_manager.py index fd42f47e16c..144a1f294a3 100644 --- a/cinder/scheduler/host_manager.py +++ b/cinder/scheduler/host_manager.py @@ -493,9 +493,12 @@ class HostManager(object): weigher_class_names=None): """Weigh the backends.""" weigher_classes = self._choose_backend_weighers(weigher_class_names) - return self.weight_handler.get_weighed_objects(weigher_classes, - backends, - weight_properties) + + weighed_backends = self.weight_handler.get_weighed_objects( + weigher_classes, backends, weight_properties) + + LOG.debug("Weighed %s", weighed_backends) + return weighed_backends def update_service_capabilities(self, service_name, host, capabilities, cluster_name, timestamp):