Merge "Revert "Migrates alarms to MongoDB""
diff --git a/debian/python3-osm-mon.postinst b/debian/python3-osm-mon.postinst
index f41b674..ff08172 100644
--- a/debian/python3-osm-mon.postinst
+++ b/debian/python3-osm-mon.postinst
@@ -28,7 +28,7 @@
pip3 install python-keystoneclient==3.15.*
pip3 install six==1.11.*
pip3 install peewee==3.8.*
-pip3 install pyyaml==3.*
+pip3 install pyyaml>=5.1.2
pip3 install prometheus_client==0.4.*
pip3 install gnocchiclient==7.0.*
pip3 install pyvcloud==19.1.1
diff --git a/osm_mon/collector/infra_collectors/base_osinfra.py b/osm_mon/collector/infra_collectors/base_osinfra.py
index 3b6003a..3541dbd 100644
--- a/osm_mon/collector/infra_collectors/base_osinfra.py
+++ b/osm_mon/collector/infra_collectors/base_osinfra.py
@@ -24,7 +24,6 @@
from keystoneclient.v3 import client as keystone_client
from novaclient import client as nova_client
-from novaclient import v2 as nova_client_v2
from osm_mon.collector.infra_collectors.base_vim import BaseVimInfraCollector
from osm_mon.collector.metric import Metric
@@ -88,6 +87,6 @@
sess = OpenstackUtils.get_session(vim_account)
return keystone_client.Client(session=sess)
- def _build_nova_client(self, vim_account: dict) -> nova_client_v2.Client:
+ def _build_nova_client(self, vim_account: dict) -> nova_client.Client:
sess = OpenstackUtils.get_session(vim_account)
return nova_client.Client("2", session=sess)
diff --git a/osm_mon/collector/utils/openstack.py b/osm_mon/collector/utils/openstack.py
index 3a2b1b9..2ec85be 100644
--- a/osm_mon/collector/utils/openstack.py
+++ b/osm_mon/collector/utils/openstack.py
@@ -35,7 +35,10 @@
user_domain_name = 'Default'
if 'config' in creds:
vim_config = creds['config']
- verify_ssl = False if 'insecure' in vim_config and vim_config['insecure'] else True
+ if 'insecure' in vim_config and vim_config['insecure']:
+ verify_ssl = False
+ if 'ca_cert' in vim_config:
+ verify_ssl = vim_config['ca_cert']
if 'project_domain_name' in vim_config:
project_domain_name = vim_config['project_domain_name']
if 'user_domain_name' in vim_config:
diff --git a/osm_mon/collector/vnf_collectors/openstack.py b/osm_mon/collector/vnf_collectors/openstack.py
index 58721a9..8a36a14 100644
--- a/osm_mon/collector/vnf_collectors/openstack.py
+++ b/osm_mon/collector/vnf_collectors/openstack.py
@@ -24,10 +24,11 @@
from typing import List
import gnocchiclient.exceptions
-from ceilometerclient.v2 import client as ceilometer_client
+from ceilometerclient import client as ceilometer_client
+from ceilometerclient.exc import HTTPException
from gnocchiclient.v1 import client as gnocchi_client
-from keystoneauth1.exceptions.catalog import EndpointNotFound
from keystoneclient.v3 import client as keystone_client
+from keystoneauth1.exceptions.catalog import EndpointNotFound
from neutronclient.v2_0 import client as neutron_client
from osm_mon.collector.metric import Metric
@@ -120,7 +121,7 @@
ceilometer = CeilometerBackend(vim_account)
ceilometer.client.capabilities.get()
return ceilometer
- except EndpointNotFound:
+ except (HTTPException, EndpointNotFound):
gnocchi = GnocchiBackend(vim_account)
gnocchi.client.metric.list(limit=1)
return gnocchi
@@ -220,7 +221,7 @@
def _build_ceilometer_client(self, vim_account: dict) -> ceilometer_client.Client:
sess = OpenstackUtils.get_session(vim_account)
- return ceilometer_client.Client(session=sess)
+ return ceilometer_client.Client("2", session=sess)
def collect_metric(self, metric_type: MetricType, metric_name: str, resource_id: str, interface_name: str):
if metric_type != MetricType.INSTANCE:
diff --git a/requirements.txt b/requirements.txt
index 6215643..29ee06a 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -23,7 +23,7 @@
python-keystoneclient==3.15.*
six==1.11.*
peewee==3.8.*
-pyyaml==3.*
+pyyaml>=5.1.2
prometheus_client==0.4.*
gnocchiclient==7.0.*
pymysql==0.9.*
diff --git a/setup.py b/setup.py
index 032ee87..1cee33f 100644
--- a/setup.py
+++ b/setup.py
@@ -56,7 +56,7 @@
"python-keystoneclient==3.15.*",
"six==1.11.*",
"peewee==3.8.*",
- "pyyaml==3.*",
+ "pyyaml>=5.1.2",
"prometheus_client==0.4.*",
"gnocchiclient==7.0.*",
"pyvcloud==19.1.1",