X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=osm_mon%2Fcollector%2Fvnf_collectors%2Fopenstack.py;h=6c6bb5813ecf4ed9bead9589ac7539326a6d6afa;hb=eacb716a3aa21c2bb46ffeda9471428f9833fc4d;hp=2738d5c49584a5c2ab2db6c64631f5fefac08a06;hpb=4b9f79e2820a011f6ebbba7fb92cdc120b364650;p=osm%2FMON.git diff --git a/osm_mon/collector/vnf_collectors/openstack.py b/osm_mon/collector/vnf_collectors/openstack.py index 2738d5c..6c6bb58 100644 --- a/osm_mon/collector/vnf_collectors/openstack.py +++ b/osm_mon/collector/vnf_collectors/openstack.py @@ -201,7 +201,8 @@ class GnocchiBackend(OpenstackBackend): total_measure = 0.0 total_measure += measures[-1][2] - except gnocchiclient.exceptions.NotFound as e: + except (gnocchiclient.exceptions.NotFound, TypeError) as e: + # Gnocchi in some Openstack versions raise TypeError instead of NotFound log.debug("No metric %s found for interface %s: %s", openstack_metric_name, interface['id'], e) return total_measure @@ -218,12 +219,13 @@ class GnocchiBackend(OpenstackBackend): resource_id=resource_id) if measures: value = measures[-1][2] - except gnocchiclient.exceptions.NotFound as e: + except (gnocchiclient.exceptions.NotFound, TypeError) as e: # CPU metric in previous Openstack versions do not support rate:mean aggregation method + # Gnocchi in some Openstack versions raise TypeError instead of NotFound if openstack_metric_name == "cpu": log.debug("No metric %s found for instance %s: %s", openstack_metric_name, resource_id, e) - log.debug("Retrying to get metric %s for instance %s without aggregation", - openstack_metric_name, resource_id) + log.info("Retrying to get metric %s for instance %s without aggregation", + openstack_metric_name, resource_id) measures = self.client.metric.get_measures(openstack_metric_name, resource_id=resource_id, limit=1)