summaryrefslogtreecommitdiff
path: root/ceilometer/objectstore
diff options
context:
space:
mode:
authorLan Qi song <lqslan@cn.ibm.com>2015-05-25 10:35:57 +0800
committerLan Qi Song <lqslan@cn.ibm.com>2015-05-31 03:08:24 +0000
commitc9eb2d44df7cafde1294123d66445ebef4cfb76d (patch)
tree95d7a7502aaedb801115f4a5a3220b24b2a3c149 /ceilometer/objectstore
parente71e391a4f787e3875862b71cb1377537ef1a97e (diff)
downloadceilometer-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.py8
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)