diff options
author | gord chung <gord@live.ca> | 2017-08-29 17:54:19 +0000 |
---|---|---|
committer | gord chung <gord@live.ca> | 2017-08-29 17:54:19 +0000 |
commit | 0d4eb0bb863b8d9c6f8ad46897e6c19c816df5c2 (patch) | |
tree | 6807fa8464161a0d4f988a1e12d130acb6d1f91a /ceilometer/compute | |
parent | f69f7711342995c74d9cc4cd4ce392668a1e591c (diff) | |
download | ceilometer-0d4eb0bb863b8d9c6f8ad46897e6c19c816df5c2.tar.gz |
fix disk total_time metrics
libvirt rd_total_time and wr_total_time metrics are in nanoseconds[1].
the current computation puts it to us not ms as defined. just skip any
conversion completely as we already capture cputime in nanoseconds.
[1] https://linux.die.net/man/1/virsh
Change-Id: I68951a2c7d08c58497952f2f2a448d813e17e2cb
Diffstat (limited to 'ceilometer/compute')
-rw-r--r-- | ceilometer/compute/pollsters/disk.py | 4 | ||||
-rw-r--r-- | ceilometer/compute/virt/libvirt/inspector.py | 17 |
2 files changed, 9 insertions, 12 deletions
diff --git a/ceilometer/compute/pollsters/disk.py b/ceilometer/compute/pollsters/disk.py index c3074309..c1928548 100644 --- a/ceilometer/compute/pollsters/disk.py +++ b/ceilometer/compute/pollsters/disk.py @@ -242,12 +242,12 @@ class PerDevicePhysicalPollster(PerDeviceDiskPollster): class PerDeviceDiskReadLatencyPollster(PerDeviceDiskPollster): sample_name = 'disk.device.read.latency' sample_type = sample.TYPE_CUMULATIVE - sample_unit = 'ms' + sample_unit = 'ns' sample_stats_key = 'rd_total_times' class PerDeviceDiskWriteLatencyPollster(PerDeviceDiskPollster): sample_name = 'disk.device.write.latency' sample_type = sample.TYPE_CUMULATIVE - sample_unit = 'ms' + sample_unit = 'ns' sample_stats_key = 'wr_total_times' diff --git a/ceilometer/compute/virt/libvirt/inspector.py b/ceilometer/compute/virt/libvirt/inspector.py index eaf4d575..543d533d 100644 --- a/ceilometer/compute/virt/libvirt/inspector.py +++ b/ceilometer/compute/virt/libvirt/inspector.py @@ -122,16 +122,13 @@ class LibvirtInspector(virt_inspector.Inspector): for target in tree.findall('devices/disk/target')]): block_stats = domain.blockStats(device) block_stats_flags = domain.blockStatsFlags(device, 0) - wr_times = block_stats_flags['wr_total_times']*1.0/1000 - rd_times = block_stats_flags['rd_total_times']*1.0/1000 - yield virt_inspector.DiskStats(device=device, - read_requests=block_stats[0], - read_bytes=block_stats[1], - write_requests=block_stats[2], - write_bytes=block_stats[3], - errors=block_stats[4], - wr_total_times=wr_times, - rd_total_times=rd_times) + yield virt_inspector.DiskStats( + device=device, + read_requests=block_stats[0], read_bytes=block_stats[1], + write_requests=block_stats[2], write_bytes=block_stats[3], + errors=block_stats[4], + wr_total_times=block_stats_flags['wr_total_times'], + rd_total_times=block_stats_flags['rd_total_times']) @libvirt_utils.retry_on_disconnect def inspect_disk_info(self, instance, duration): |