take out cpu_util as it will be calculated in nova
Change-Id: If809a37674ad768f96a6656053505df39b0a372e
This commit is contained in:
parent
ec8cecac00
commit
ca7b76193b
@ -21,8 +21,8 @@ from ceilometer.i18n import _
|
|||||||
from ceilometer_zvm.compute.virt.zvm import exception
|
from ceilometer_zvm.compute.virt.zvm import exception
|
||||||
from ceilometer_zvm.compute.virt.zvm import utils as zvmutils
|
from ceilometer_zvm.compute.virt.zvm import utils as zvmutils
|
||||||
from oslo_config import cfg
|
from oslo_config import cfg
|
||||||
from oslo_utils import units
|
|
||||||
from oslo_log import log
|
from oslo_log import log
|
||||||
|
from oslo_utils import units
|
||||||
|
|
||||||
LOG = log.getLogger(__name__)
|
LOG = log.getLogger(__name__)
|
||||||
|
|
||||||
@ -86,45 +86,13 @@ class ZVMInspector(virt_inspector.Inspector):
|
|||||||
LOG.debug("instance stats:%s", str(inst_stats))
|
LOG.debug("instance stats:%s", str(inst_stats))
|
||||||
cpu_number = inst_stats['guest_cpus']
|
cpu_number = inst_stats['guest_cpus']
|
||||||
used_cpu_time = (inst_stats['used_cpu_time_us'] * units.k)
|
used_cpu_time = (inst_stats['used_cpu_time_us'] * units.k)
|
||||||
cpu_util = self._calc_cpu_util(instance, inst_stats)
|
|
||||||
used_mem_mb = inst_stats['used_mem_kb'] / units.Ki
|
used_mem_mb = inst_stats['used_mem_kb'] / units.Ki
|
||||||
# Construct the final result
|
# Construct the final result
|
||||||
return virt_inspector.InstanceStats(cpu_number=cpu_number,
|
return virt_inspector.InstanceStats(cpu_number=cpu_number,
|
||||||
cpu_time=used_cpu_time,
|
cpu_time=used_cpu_time,
|
||||||
memory_usage=used_mem_mb,
|
memory_usage=used_mem_mb
|
||||||
cpu_util=cpu_util
|
|
||||||
)
|
)
|
||||||
|
|
||||||
def _save_inst_data(self, instance, inst_stats):
|
|
||||||
inst_name = zvmutils.get_inst_name(instance).upper()
|
|
||||||
data = inst_stats
|
|
||||||
data['time_stamp'] = time.time()
|
|
||||||
self.cache[inst_name] = data
|
|
||||||
|
|
||||||
def _load_inst_data(self, instance):
|
|
||||||
inst_name = zvmutils.get_inst_name(instance).upper()
|
|
||||||
try:
|
|
||||||
return self.cache[inst_name]
|
|
||||||
except KeyError:
|
|
||||||
LOG.info('no cache for instance %s', inst_name)
|
|
||||||
return None
|
|
||||||
|
|
||||||
def _calc_cpu_util(self, instance, inst_stats):
|
|
||||||
previous_stats = self._load_inst_data(instance)
|
|
||||||
if previous_stats:
|
|
||||||
current_time = time.time()
|
|
||||||
previous_time = previous_stats['time_stamp']
|
|
||||||
cpu_util = (inst_stats['used_cpu_time_us']/inst_stats['guest_cpus'] - \
|
|
||||||
previous_stats['used_cpu_time_us']/previous_stats['guest_cpus']) / \
|
|
||||||
((current_time-previous_time)*units.k)
|
|
||||||
self._save_inst_data(instance, inst_stats)
|
|
||||||
return cpu_util
|
|
||||||
else:
|
|
||||||
cpu_util = inst_stats['used_cpu_time_us']/ \
|
|
||||||
inst_stats['elapsed_cpu_time_us']
|
|
||||||
self._save_inst_data(instance, inst_stats)
|
|
||||||
return cpu_util
|
|
||||||
|
|
||||||
def _inspect_inst_data(self, instance, inspect_type):
|
def _inspect_inst_data(self, instance, inspect_type):
|
||||||
inspect_data = {}
|
inspect_data = {}
|
||||||
# Make sure the inst name in upper case
|
# Make sure the inst name in upper case
|
||||||
|
Loading…
x
Reference in New Issue
Block a user