Transform KB into MB and normalize CPU

This patch set normalizes CPU for hardware.cpu.util meter and
transform KB into MB fetched from hardware.memory.used meter.

Change-Id: I6dd1d053e81f06c3adb6fb256ac77bbf55a07f3e
This commit is contained in:
Alexander Chadin
2016-10-17 17:34:17 +03:00
parent e7a1e148ca
commit ef0d133ba8
3 changed files with 30 additions and 20 deletions

View File

@@ -25,6 +25,7 @@ import random
import oslo_cache
from oslo_config import cfg
from oslo_log import log
import oslo_utils
from watcher._i18n import _LI, _
from watcher.common import exception
@@ -201,6 +202,8 @@ class WorkloadStabilization(base.WorkloadStabilizationBaseStrategy):
if avg_meter is None:
raise exception.NoMetricValuesForInstance(
resource_id=instance_uuid, metric_name=meter)
if meter == 'cpu_util':
avg_meter /= float(100)
instance_load[meter] = avg_meter
return instance_load
@@ -236,6 +239,10 @@ class WorkloadStabilization(base.WorkloadStabilizationBaseStrategy):
raise exception.NoSuchMetricForHost(
metric=self.instance_metrics[metric],
host=node_id)
if self.instance_metrics[metric] == 'hardware.memory.used':
avg_meter /= oslo_utils.units.Ki
if self.instance_metrics[metric] == 'hardware.cpu.util':
avg_meter /= 100
hosts_load[node_id][metric] = avg_meter
return hosts_load