summaryrefslogtreecommitdiff
path: root/ceilometer/publisher
diff options
context:
space:
mode:
authorZuul <zuul@review.opendev.org>2022-10-18 08:07:47 +0000
committerGerrit Code Review <review@openstack.org>2022-10-18 08:07:47 +0000
commitb461ca1f18a4c9fb6727255b53b5104a7ab01e8c (patch)
tree5e242cb887b483ae7c67f3917ba95d4138de792e /ceilometer/publisher
parent5106f4acc46f87bccfc2174840a9ec29145be0dd (diff)
parentb7c2c7ca965659255e9a611666e58b024c27d804 (diff)
downloadceilometer-b461ca1f18a4c9fb6727255b53b5104a7ab01e8c.tar.gz
Merge "Properly handle 'resource_id' as None for Gnocchi publisher"
Diffstat (limited to 'ceilometer/publisher')
-rw-r--r--ceilometer/publisher/gnocchi.py13
1 files changed, 12 insertions, 1 deletions
diff --git a/ceilometer/publisher/gnocchi.py b/ceilometer/publisher/gnocchi.py
index 27e499f5..2741ba00 100644
--- a/ceilometer/publisher/gnocchi.py
+++ b/ceilometer/publisher/gnocchi.py
@@ -325,7 +325,18 @@ class GnocchiPublisher(publisher.ConfigPublisherBase):
# NOTE(sileht): skip sample generated by gnocchi itself
data = [s for s in data if not self._is_gnocchi_activity(s)]
- data.sort(key=operator.attrgetter('resource_id'))
+
+ def value_to_sort(object_to_sort):
+ value = object_to_sort.resource_id
+ if not value:
+ LOG.debug("Resource ID was not defined for sample data [%s]. "
+ "Therefore, we will use an empty string as the "
+ "resource ID.", object_to_sort)
+ value = ''
+
+ return value
+
+ data.sort(key=value_to_sort)
resource_grouped_samples = itertools.groupby(
data, key=operator.attrgetter('resource_id'))