take out cpu_util calc as it will be calculated in nova
Change-Id: I79bf5a4811fa5ba7f493b9d589cff2e2b01c66a2
This commit is contained in:
parent
ec8cecac00
commit
699ef3afba
|
@ -14,7 +14,6 @@
|
|||
|
||||
|
||||
import six
|
||||
import time
|
||||
|
||||
from ceilometer.compute.virt import inspector as virt_inspector
|
||||
from ceilometer.i18n import _
|
||||
|
@ -70,13 +69,15 @@ class ZVMInspector(virt_inspector.Inspector):
|
|||
rx_bytes=nic['nic_rx'],
|
||||
rx_packets=nic['nic_fr_rx'],
|
||||
# rx_bytes_delta was taken out from zcc
|
||||
rx_bytes_delta=None,
|
||||
# stable/ussuri does not have it either
|
||||
# rx_bytes_delta=None,
|
||||
rx_errors=nic['nic_fr_rx_err'],
|
||||
rx_drop=None,
|
||||
tx_bytes=nic['nic_tx'],
|
||||
tx_packets=nic['nic_fr_tx'],
|
||||
# tx_bytes_delta was taken out from zcc
|
||||
tx_bytes_delta=None,
|
||||
# # stable/ussuri does not have it either
|
||||
# tx_bytes_delta=None,
|
||||
tx_errors=nic['nic_fr_tx_err'],
|
||||
tx_drop=None
|
||||
)
|
||||
|
@ -86,45 +87,13 @@ class ZVMInspector(virt_inspector.Inspector):
|
|||
LOG.debug("instance stats:%s", str(inst_stats))
|
||||
cpu_number = inst_stats['guest_cpus']
|
||||
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
|
||||
# Construct the final result
|
||||
return virt_inspector.InstanceStats(cpu_number=cpu_number,
|
||||
cpu_time=used_cpu_time,
|
||||
memory_usage=used_mem_mb,
|
||||
cpu_util=cpu_util
|
||||
memory_usage=used_mem_mb
|
||||
)
|
||||
|
||||
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):
|
||||
inspect_data = {}
|
||||
# Make sure the inst name in upper case
|
||||
|
|
2
tox.ini
2
tox.ini
|
@ -11,7 +11,7 @@ setenv =
|
|||
VIRTUAL_ENV={envdir}
|
||||
deps = -r{toxinidir}/requirements.txt
|
||||
-r{toxinidir}/test-requirements.txt
|
||||
-egit+https://github.com/openstack/ceilometer@master#egg=ceilometer
|
||||
-egit+https://github.com/openstack/ceilometer@stable/ussuri#egg=ceilometer
|
||||
commands = /bin/cp -r {toxinidir}/ceilometer_zvm/compute/virt/zvm \
|
||||
{toxinidir}/.tox/{envname}/src/ceilometer/ceilometer/compute/virt/
|
||||
python setup.py testr --slowest --testr-args='{posargs}'
|
||||
|
|
Loading…
Reference in New Issue