summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGábor Antal <antal@inf.u-szeged.hu>2017-02-14 18:43:05 +0100
committerAmrith Kumar <amrith.kumar@gmail.com>2017-05-31 11:37:25 +0000
commitded64b45c6db4e22d27aa66a7cfcd5784a771a1d (patch)
treedbe3004c9f8d8d465c3b21d91b5268d3d216e9e4
parent00fde782be276698a5372066bb3fec74509e0fa8 (diff)
downloadtrove-ded64b45c6db4e22d27aa66a7cfcd5784a771a1d.tar.gz
Handle log message interpolation by the logger in common/
According to OpenStack Guideline[1], logged string message should be interpolated by the logger. [1]: http://docs.openstack.org/developer/oslo.i18n/guidelines.html#adding-variables-to-log-messages Change-Id: I946422e662b5efc453bfe76f3631ece1716dbb4c Related-Bug: #1642552
-rw-r--r--trove/common/auth.py8
-rw-r--r--trove/common/cfg.py2
-rw-r--r--trove/common/exception.py2
-rw-r--r--trove/common/notification.py6
-rw-r--r--trove/common/server_group.py16
-rw-r--r--trove/common/utils.py4
-rw-r--r--trove/common/wsgi.py11
-rw-r--r--trove/tests/unittests/common/test_utils.py6
8 files changed, 30 insertions, 25 deletions
diff --git a/trove/common/auth.py b/trove/common/auth.py
index d32f9a64..674a9634 100644
--- a/trove/common/auth.py
+++ b/trove/common/auth.py
@@ -30,22 +30,22 @@ class AuthorizationMiddleware(wsgi.Middleware):
def __init__(self, application, auth_providers, **local_config):
self.auth_providers = auth_providers
- LOG.debug("Auth middleware providers: %s" % auth_providers)
+ LOG.debug("Auth middleware providers: %s", auth_providers)
super(AuthorizationMiddleware, self).__init__(application,
**local_config)
def process_request(self, request):
roles = request.headers.get('X_ROLE', '').split(',')
- LOG.debug("Processing auth request with roles: %s" % roles)
+ LOG.debug("Processing auth request with roles: %s", roles)
tenant_id = request.headers.get('X-Tenant-Id', None)
- LOG.debug("Processing auth request with tenant_id: %s" % tenant_id)
+ LOG.debug("Processing auth request with tenant_id: %s", tenant_id)
for provider in self.auth_providers:
provider.authorize(request, tenant_id, roles)
@classmethod
def factory(cls, global_config, **local_config):
def _factory(app):
- LOG.debug("Created auth middleware with config: %s" %
+ LOG.debug("Created auth middleware with config: %s",
local_config)
return cls(app, [TenantBasedAuth()], **local_config)
return _factory
diff --git a/trove/common/cfg.py b/trove/common/cfg.py
index e9e3dd17..b96eb03b 100644
--- a/trove/common/cfg.py
+++ b/trove/common/cfg.py
@@ -1574,7 +1574,7 @@ def get_configuration_property(property_name):
if not datastore_manager:
datastore_manager = 'mysql'
LOG.warning(_("Manager name ('datastore_manager') not defined, "
- "using '%s' options instead.") % datastore_manager)
+ "using '%s' options instead."), datastore_manager)
try:
return CONF.get(datastore_manager).get(property_name)
diff --git a/trove/common/exception.py b/trove/common/exception.py
index 50194f21..58f81f97 100644
--- a/trove/common/exception.py
+++ b/trove/common/exception.py
@@ -44,7 +44,7 @@ class TroveError(openstack_exception.OpenstackException):
self.message = message
if self.internal_message is not None:
try:
- LOG.error(safe_fmt_string(self.internal_message) % kwargs)
+ LOG.error(safe_fmt_string(self.internal_message), kwargs)
except Exception:
LOG.error(self.internal_message)
self.message = safe_fmt_string(self.message)
diff --git a/trove/common/notification.py b/trove/common/notification.py
index fa25b4c6..73ec7990 100644
--- a/trove/common/notification.py
+++ b/trove/common/notification.py
@@ -142,7 +142,7 @@ class TroveBaseTraits(object):
publisher_id = publisher_id or CONF.host
event_type = self.event_type_format % event_type
event_payload = self.serialize(self.context)
- LOG.debug('Sending event: %(event_type)s, %(payload)s' %
+ LOG.debug('Sending event: %(event_type)s, %(payload)s',
{'event_type': event_type, 'payload': event_payload})
notifier = rpc.get_notifier(
@@ -275,7 +275,7 @@ class DBaaSQuotas(object):
}
def notify(self):
- LOG.debug('Sending event: %(event_type)s, %(payload)s' %
+ LOG.debug('Sending event: %(event_type)s, %(payload)s',
{'event_type': DBaaSQuotas.event_type,
'payload': self.payload})
@@ -401,7 +401,7 @@ class DBaaSAPINotification(object):
qualified_event_type = (DBaaSAPINotification.event_type_format
% (self.event_type(), event_qualifier))
- LOG.debug('Sending event: %(event_type)s, %(payload)s' %
+ LOG.debug('Sending event: %(event_type)s, %(payload)s',
{'event_type': qualified_event_type, 'payload': payload})
context = copy.copy(self.context)
diff --git a/trove/common/server_group.py b/trove/common/server_group.py
index f66f6a2c..a51a6930 100644
--- a/trove/common/server_group.py
+++ b/trove/common/server_group.py
@@ -36,7 +36,7 @@ class ServerGroup(object):
if compute_id in sg.members:
server_group = sg
except Exception:
- LOG.exception(_("Could not load server group for compute %s") %
+ LOG.exception(_("Could not load server group for compute %s"),
compute_id)
return server_group
@@ -46,8 +46,10 @@ class ServerGroup(object):
server_group_name = "%s_%s" % ('locality', name_suffix)
server_group = client.server_groups.create(
name=server_group_name, policies=[locality])
- LOG.debug("Created '%s' server group called %s (id: %s)." %
- (locality, server_group_name, server_group.id))
+ LOG.debug("Created '%(locality)s' server group called %(group_name)s "
+ "(id: %(group_id)s).",
+ {'locality': locality, 'group_name': server_group_name,
+ 'group_id': server_group.id})
return server_group
@@ -59,10 +61,12 @@ class ServerGroup(object):
if force or len(server_group.members) <= 1:
client = create_nova_client(context)
client.server_groups.delete(server_group.id)
- LOG.debug("Deleted server group %s." % server_group.id)
+ LOG.debug("Deleted server group %s.", server_group.id)
else:
- LOG.debug("Skipping delete of server group %s (members: %s)." %
- (server_group.id, server_group.members))
+ LOG.debug("Skipping delete of server group %(id)s "
+ "(members: %(members)s).",
+ {'id': server_group.id,
+ 'members': server_group.members})
@classmethod
def convert_to_hint(cls, server_group, hints=None):
diff --git a/trove/common/utils.py b/trove/common/utils.py
index 4efe4771..9a81be45 100644
--- a/trove/common/utils.py
+++ b/trove/common/utils.py
@@ -246,7 +246,7 @@ def execute_with_timeout(*args, **kwargs):
LOG.error(
_("Command '%(cmd)s' failed. %(description)s "
"Exit code: %(exit_code)s\nstderr: %(stderr)s\n"
- "stdout: %(stdout)s") %
+ "stdout: %(stdout)s"),
{'cmd': e.cmd, 'description': e.description or '',
'exit_code': e.exit_code, 'stderr': e.stderr,
'stdout': e.stdout})
@@ -301,7 +301,7 @@ def try_recover(func):
if recover_func is not None:
recover_func(func)
else:
- LOG.debug("No recovery method defined for %(func)s" % {
+ LOG.debug("No recovery method defined for %(func)s", {
'func': func.__name__})
raise
return _decorator
diff --git a/trove/common/wsgi.py b/trove/common/wsgi.py
index c087f6c8..c63e9bbe 100644
--- a/trove/common/wsgi.py
+++ b/trove/common/wsgi.py
@@ -374,14 +374,13 @@ class Controller(object):
@classmethod
def get_schema(cls, action, body):
- LOG.debug("Getting schema for %s:%s" %
- (cls.__class__.__name__, action))
+ LOG.debug("Getting schema for %(name)s:%(action)s",
+ {'name': cls.__class__.__name__, 'action': action})
if cls.schemas:
matching_schema = cls.schemas.get(action, {})
if matching_schema:
- LOG.debug(
- "Found Schema: %s" % matching_schema.get("name",
- matching_schema))
+ LOG.debug("Found Schema: %s",
+ matching_schema.get("name", matching_schema))
return matching_schema
@staticmethod
@@ -557,7 +556,7 @@ class ContextMiddleware(base_wsgi.Middleware):
@classmethod
def factory(cls, global_config, **local_config):
def _factory(app):
- LOG.debug("Created context middleware with config: %s" %
+ LOG.debug("Created context middleware with config: %s",
local_config)
return cls(app)
diff --git a/trove/tests/unittests/common/test_utils.py b/trove/tests/unittests/common/test_utils.py
index c469a5f0..87b3d31b 100644
--- a/trove/tests/unittests/common/test_utils.py
+++ b/trove/tests/unittests/common/test_utils.py
@@ -63,8 +63,10 @@ class TestUtils(trove_testtools.TestCase):
'/usr/bin/foo', log_output_on_error=True)
utils.LOG.error.assert_called_with(
- u"Command 'test' failed. test-desc Exit code: 42\n"
- "stderr: err\nstdout: out")
+ u"Command '%(cmd)s' failed. %(description)s Exit code: "
+ u"%(exit_code)s\nstderr: %(stderr)s\nstdout: %(stdout)s",
+ {'description': 'test-desc', 'stderr': 'err', 'exit_code': 42,
+ 'stdout': 'out', 'cmd': 'test'})
def test_unpack_singleton(self):
self.assertEqual([1, 2, 3], utils.unpack_singleton([1, 2, 3]))