diff options
author | Lan Qi song <lqslan@cn.ibm.com> | 2015-05-25 10:35:57 +0800 |
---|---|---|
committer | Lan Qi Song <lqslan@cn.ibm.com> | 2015-05-31 03:08:24 +0000 |
commit | c9eb2d44df7cafde1294123d66445ebef4cfb76d (patch) | |
tree | 95d7a7502aaedb801115f4a5a3220b24b2a3c149 /ceilometer/objectstore | |
parent | e71e391a4f787e3875862b71cb1377537ef1a97e (diff) | |
download | ceilometer-c9eb2d44df7cafde1294123d66445ebef4cfb76d.tar.gz |
Disable rgw pollster when aws module not found
This patch will raise PollsterPermanentError in rgw pollster
to disable those pollsters when requests-aws module not found.
Change-Id: I880ec77467fae026f25e61d04d7dd76e08834b08
Closes-Bug: #1424746
Diffstat (limited to 'ceilometer/objectstore')
-rw-r--r-- | ceilometer/objectstore/rgw.py | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/ceilometer/objectstore/rgw.py b/ceilometer/objectstore/rgw.py index 4efd33f8..e2c3ace5 100644 --- a/ceilometer/objectstore/rgw.py +++ b/ceilometer/objectstore/rgw.py @@ -23,7 +23,6 @@ import six.moves.urllib.parse as urlparse from ceilometer.agent import plugin_base from ceilometer.i18n import _ -from ceilometer.objectstore.rgw_client import RGWAdminClient as rgwclient from ceilometer import sample LOG = log.getLogger(__name__) @@ -91,7 +90,12 @@ class _Base(plugin_base.PollsterBase): if not endpoint: raise StopIteration() - rgw_client = rgwclient(endpoint, self.access_key, self.secret) + try: + from ceilometer.objectstore.rgw_client import RGWAdminClient + rgw_client = RGWAdminClient(endpoint, self.access_key, self.secret) + except ImportError as e: + raise plugin_base.PollsterPermanentError(e) + for t in tenants: api_method = 'get_%s' % self.METHOD yield t.id, getattr(rgw_client, api_method)(t.id) |