From 1e673a64b9a90880cb83895a2b54f91de5b85b4d Mon Sep 17 00:00:00 2001 From: Mehdi Abaakouk Date: Thu, 6 Jul 2017 15:55:40 +0200 Subject: [PATCH] Deprecate aggregated disk.* metrics on instance disk.* are just aggregates of disk.device.*. We basically build the same think twice. It's up to the backend (ie: Gnocchi) to aggregate them if someone want the aggregate. Change-Id: I612b575004f65665f8630f19f56c2fb3637448fd --- ceilometer/compute/pollsters/disk.py | 10 ++++++++++ etc/ceilometer/polling.yaml | 8 ++++---- ...ecate-aggregated-disk-metrics-54a395c05e74d685.yaml | 6 ++++++ 3 files changed, 20 insertions(+), 4 deletions(-) create mode 100644 releasenotes/notes/deprecate-aggregated-disk-metrics-54a395c05e74d685.yaml diff --git a/ceilometer/compute/pollsters/disk.py b/ceilometer/compute/pollsters/disk.py index c192854868..7df98bcd82 100644 --- a/ceilometer/compute/pollsters/disk.py +++ b/ceilometer/compute/pollsters/disk.py @@ -23,6 +23,8 @@ from ceilometer import sample LOG = log.getLogger(__name__) +AGGREGATED_DEPRECATION_DONE = set() + class AggregateDiskPollster(pollsters.GenericComputePollster): inspector_method = "inspect_disks" @@ -44,6 +46,14 @@ class AggregateDiskPollster(pollsters.GenericComputePollster): def get_additional_metadata(instance, stats): return {'device': stats.device} + def get_samples(self, *args, **kwargs): + if self.sample_name not in AGGREGATED_DEPRECATION_DONE: + AGGREGATED_DEPRECATION_DONE.add(self.sample_name) + LOG.warning("The %s metric is deprecated, instead use %s" % + (self.sample_name, + self.sample_name.replace("disk.", "disk.device."))) + return super(AggregateDiskPollster, self).get_samples(*args, **kwargs) + class PerDeviceDiskPollster(pollsters.GenericComputePollster): inspector_method = "inspect_disks" diff --git a/etc/ceilometer/polling.yaml b/etc/ceilometer/polling.yaml index 158381d33c..a986d32130 100644 --- a/etc/ceilometer/polling.yaml +++ b/etc/ceilometer/polling.yaml @@ -10,10 +10,10 @@ sources: - network.incoming.packets - network.outgoing.bytes - network.outgoing.packets - - disk.read.bytes - - disk.read.requests - - disk.write.bytes - - disk.write.requests + - disk.device.read.bytes + - disk.device.read.requests + - disk.device.write.bytes + - disk.device.write.requests - hardware.cpu.util - hardware.memory.used - hardware.memory.total diff --git a/releasenotes/notes/deprecate-aggregated-disk-metrics-54a395c05e74d685.yaml b/releasenotes/notes/deprecate-aggregated-disk-metrics-54a395c05e74d685.yaml new file mode 100644 index 0000000000..fa35f5b711 --- /dev/null +++ b/releasenotes/notes/deprecate-aggregated-disk-metrics-54a395c05e74d685.yaml @@ -0,0 +1,6 @@ +--- +deprecations: + - | + disk.* aggregated metrics for instance are deprecated, in favor of the + per disk metrics (disk.device.*). Now, it's up to the backend to provide + such aggregation feature. Gnocchi already provides this.