summaryrefslogtreecommitdiff
path: root/ceilometer/network
diff options
context:
space:
mode:
authorMehdi Abaakouk <sileht@redhat.com>2016-10-13 08:57:57 +0200
committerMehdi Abaakouk <sileht@redhat.com>2016-11-07 11:41:19 +0100
commit1709b1cce4627f3465373ac44018ad94e783f9e6 (patch)
tree5f5f354610ef83de85df949a0dc0a85bbaa0bed7 /ceilometer/network
parent9e03f7ef809395099a429c0745623028c6c3f185 (diff)
downloadceilometer-1709b1cce4627f3465373ac44018ad94e783f9e6.tar.gz
pollsters: stop using global conf
Change-Id: I0fc7d66ada06aca0fdef26ec1a5d8e26cbbc7fed
Diffstat (limited to 'ceilometer/network')
-rw-r--r--ceilometer/network/services/lbaas.py15
-rw-r--r--ceilometer/network/statistics/__init__.py6
-rw-r--r--ceilometer/network/statistics/driver.py2
-rw-r--r--ceilometer/network/statistics/opencontrail/client.py20
-rw-r--r--ceilometer/network/statistics/opencontrail/driver.py8
-rw-r--r--ceilometer/network/statistics/opendaylight/client.py12
-rw-r--r--ceilometer/network/statistics/opendaylight/driver.py5
7 files changed, 32 insertions, 36 deletions
diff --git a/ceilometer/network/services/lbaas.py b/ceilometer/network/services/lbaas.py
index 5def3495..d4fe58e4 100644
--- a/ceilometer/network/services/lbaas.py
+++ b/ceilometer/network/services/lbaas.py
@@ -16,7 +16,6 @@
import abc
import collections
-from oslo_config import cfg
from oslo_log import log
import six
@@ -44,9 +43,9 @@ LOAD_BALANCER_STATUS_V2 = {
class BaseLBPollster(base.BaseServicesPollster):
"""Base Class for Load Balancer pollster"""
- def __init__(self):
- super(BaseLBPollster, self).__init__()
- self.lb_version = cfg.CONF.service_types.neutron_lbaas_version
+ def __init__(self, conf):
+ super(BaseLBPollster, self).__init__(conf)
+ self.lb_version = self.conf.service_types.neutron_lbaas_version
def get_load_balancer_status_id(self, value):
if self.lb_version == 'v1':
@@ -225,10 +224,10 @@ class _LBStatsPollster(base.BaseServicesPollster):
and bandwidth.
"""
- def __init__(self):
- super(_LBStatsPollster, self).__init__()
- self.client = neutron_client.Client(cfg.CONF)
- self.lb_version = cfg.CONF.service_types.neutron_lbaas_version
+ def __init__(self, conf):
+ super(_LBStatsPollster, self).__init__(conf)
+ self.client = neutron_client.Client(self.conf)
+ self.lb_version = self.conf.service_types.neutron_lbaas_version
@staticmethod
def make_sample_from_pool(pool, name, type, unit, volume,
diff --git a/ceilometer/network/statistics/__init__.py b/ceilometer/network/statistics/__init__.py
index f45ed710..5c14b06c 100644
--- a/ceilometer/network/statistics/__init__.py
+++ b/ceilometer/network/statistics/__init__.py
@@ -64,17 +64,17 @@ class _Base(plugin_base.PollsterBase):
return parts, params
@staticmethod
- def get_driver(scheme):
+ def get_driver(conf, scheme):
if scheme not in _Base.drivers:
_Base.drivers[scheme] = _driver.DriverManager(_Base.NAMESPACE,
- scheme).driver()
+ scheme).driver(conf)
return _Base.drivers[scheme]
def get_samples(self, manager, cache, resources):
resources = resources or []
for resource in resources:
parse_url, params = self._parse_my_resource(resource)
- ext = self.get_driver(parse_url.scheme)
+ ext = self.get_driver(self.conf, parse_url.scheme)
sample_data = ext.get_sample_data(self.meter_name,
parse_url,
params,
diff --git a/ceilometer/network/statistics/driver.py b/ceilometer/network/statistics/driver.py
index 0eb82550..2f19da6c 100644
--- a/ceilometer/network/statistics/driver.py
+++ b/ceilometer/network/statistics/driver.py
@@ -20,6 +20,8 @@ import six
@six.add_metaclass(abc.ABCMeta)
class Driver(object):
+ def __init__(self, conf):
+ self.conf = conf
@abc.abstractmethod
def get_sample_data(self, meter_name, parse_url, params, cache):
diff --git a/ceilometer/network/statistics/opencontrail/client.py b/ceilometer/network/statistics/opencontrail/client.py
index a85512ff..5a3f623c 100644
--- a/ceilometer/network/statistics/opencontrail/client.py
+++ b/ceilometer/network/statistics/opencontrail/client.py
@@ -37,7 +37,8 @@ class OpencontrailAPIFailed(Exception):
class AnalyticsAPIBaseClient(object):
"""Opencontrail Base Statistics REST API Client."""
- def __init__(self, endpoint, data):
+ def __init__(self, conf, endpoint, data):
+ self.conf = conf
self.endpoint = endpoint
self.data = data or {}
@@ -67,14 +68,13 @@ class AnalyticsAPIBaseClient(object):
},
'data': data,
'allow_redirects': False,
- 'timeout': CONF.http_timeout,
+ 'timeout': self.conf.http_timeout,
}
return req_params
- @staticmethod
- def _log_req(url, req_params):
- if not CONF.debug:
+ def _log_req(self, url, req_params):
+ if not self.conf.debug:
return
curl_command = ['REQ: curl -i -X GET ']
@@ -90,9 +90,8 @@ class AnalyticsAPIBaseClient(object):
LOG.debug(''.join(curl_command))
- @staticmethod
- def _log_res(resp):
- if not CONF.debug:
+ def _log_res(self, resp):
+ if not self.conf.debug:
return
dump = ['RES: \n', 'HTTP %.1f %s %s\n' % (resp.raw.version,
@@ -124,6 +123,5 @@ class NetworksAPIClient(AnalyticsAPIBaseClient):
class Client(object):
-
- def __init__(self, endpoint, data=None):
- self.networks = NetworksAPIClient(endpoint, data)
+ def __init__(self, conf, endpoint, data=None):
+ self.networks = NetworksAPIClient(conf, endpoint, data)
diff --git a/ceilometer/network/statistics/opencontrail/driver.py b/ceilometer/network/statistics/opencontrail/driver.py
index 492e70e7..f17a77b5 100644
--- a/ceilometer/network/statistics/opencontrail/driver.py
+++ b/ceilometer/network/statistics/opencontrail/driver.py
@@ -14,7 +14,6 @@
import re
-from oslo_config import cfg
from six.moves.urllib import parse as urlparse
from ceilometer.network.statistics import driver
@@ -58,15 +57,14 @@ class OpencontrailDriver(driver.Driver):
opencontrail://localhost:8081/?resource=fip_stats_list&
virtual_network=default-domain:openstack:public
"""
- @staticmethod
- def _prepare_cache(endpoint, params, cache):
+ def _prepare_cache(self, endpoint, params, cache):
if 'network.statistics.opencontrail' in cache:
return cache['network.statistics.opencontrail']
data = {
- 'o_client': client.Client(endpoint),
- 'n_client': neutron_client.Client(cfg.CONF)
+ 'o_client': client.Client(self.conf, endpoint),
+ 'n_client': neutron_client.Client(self.conf)
}
cache['network.statistics.opencontrail'] = data
diff --git a/ceilometer/network/statistics/opendaylight/client.py b/ceilometer/network/statistics/opendaylight/client.py
index 3e78636a..26d9a36b 100644
--- a/ceilometer/network/statistics/opendaylight/client.py
+++ b/ceilometer/network/statistics/opendaylight/client.py
@@ -156,23 +156,23 @@ class HostTrackerAPIClient(_Base):
class Client(object):
- def __init__(self, endpoint, params):
+ def __init__(self, conf, endpoint, params):
self.statistics = StatisticsAPIClient(self)
self.topology = TopologyAPIClient(self)
self.switch_manager = SwitchManagerAPIClient(self)
self.host_tracker = HostTrackerAPIClient(self)
self._endpoint = endpoint
+ self.conf = conf
self._req_params = self._get_req_params(params)
- @staticmethod
- def _get_req_params(params):
+ def _get_req_params(self, params):
req_params = {
'headers': {
'Accept': 'application/json'
},
- 'timeout': CONF.http_timeout,
+ 'timeout': self.conf.http_timeout,
}
auth_way = params.get('auth')
@@ -221,10 +221,10 @@ class Client(object):
LOG.debug(''.join(dump))
def _http_request(self, url):
- if CONF.debug:
+ if self.conf.debug:
self._log_req(url)
resp = requests.get(url, **self._req_params)
- if CONF.debug:
+ if self.conf.debug:
self._log_res(resp)
if resp.status_code // 100 != 2:
raise OpenDaylightRESTAPIFailed(
diff --git a/ceilometer/network/statistics/opendaylight/driver.py b/ceilometer/network/statistics/opendaylight/driver.py
index bc78dbe5..2543c7bc 100644
--- a/ceilometer/network/statistics/opendaylight/driver.py
+++ b/ceilometer/network/statistics/opendaylight/driver.py
@@ -81,8 +81,7 @@ class OpenDayLightDriver(driver.Driver):
http://127.0.0.1:8080/controller/nb/v2/statistics/default/flow
http://127.0.0.1:8080/controller/nb/v2/statistics/egg/flow
"""
- @staticmethod
- def _prepare_cache(endpoint, params, cache):
+ def _prepare_cache(self, endpoint, params, cache):
if 'network.statistics.opendaylight' in cache:
return cache['network.statistics.opendaylight']
@@ -98,7 +97,7 @@ class OpenDayLightDriver(driver.Driver):
odl_params['user'] = params['user'][0]
if 'password' in params:
odl_params['password'] = params['password'][0]
- cs = client.Client(endpoint, odl_params)
+ cs = client.Client(self.conf, endpoint, odl_params)
for container_name in container_names:
try: