Skip to content

Commit

Permalink
add a log when the option in conf can't be identitied
Browse files Browse the repository at this point in the history
When the option is unknown to auth_token and it's value can't be
converted, this patch adds a warning log.

Change-Id: I818708cc19488030b80daa2b01b9f8622632f7eb
  • Loading branch information
rocky-nupt authored and samueldmq committed Jun 4, 2017
1 parent e1cd9a4 commit ba78db0
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 2 deletions.
6 changes: 4 additions & 2 deletions keystonemiddleware/_common/config.py
Expand Up @@ -13,6 +13,7 @@
import pkg_resources

from oslo_config import cfg
from oslo_log import log as logging
import pbr
import six

Expand All @@ -21,6 +22,7 @@

CONF = cfg.CONF
_NOT_SET = object()
_LOG = logging.getLogger(__name__)


def _conf_values_type_convert(group_name, all_options, conf):
Expand Down Expand Up @@ -53,8 +55,8 @@ def _conf_values_type_convert(group_name, all_options, conf):
v = type_(v)
except KeyError: # nosec
# This option is not known to auth_token. v is not converted.
# FIXME(jamielennox): This should probably log a warning.
pass
_LOG.warning(
'The option "%s" in conf is not known to auth_token', k)
except ValueError as e:
raise exceptions.ConfigurationError(
_('Unable to convert the value of %(key)s option into correct '
Expand Down
Expand Up @@ -491,6 +491,14 @@ def test_deprecated_conf_values(self):
middleware = auth_token.AuthProtocol(self.fake_app, conf)
self.assertEqual([servers], middleware._conf.get('memcached_servers'))

def test_conf_values_type_convert_with_wrong_key(self):
conf = {
'wrong_key': '123'
}
log = 'The option "wrong_key" in conf is not known to auth_token'
auth_token.AuthProtocol(self.fake_app, conf)
self.assertThat(self.logger.output, matchers.Contains(log))

def test_conf_values_type_convert_with_wrong_value(self):
conf = {
'include_service_catalog': '123',
Expand Down

0 comments on commit ba78db0

Please sign in to comment.