From abc850331c7b816d942c4e36658caac8849ee080 Mon Sep 17 00:00:00 2001 From: ricolin Date: Thu, 7 Dec 2017 18:44:40 +0800 Subject: [PATCH] Don't log PolicyNotRegistered when check resource type Silence PolicyNotRegistered exception when checking resource type. We do not consider PolicyNotRegistered as an error when checking resource type, so we shouldn't log the exception as well. Depends-On: I13f1906f53a89586bb51c0b70fa768a9500dfa26 Change-Id: I111ea7ffa43a46d2a6fe360fb0c20d672df5771c --- heat/common/policy.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/heat/common/policy.py b/heat/common/policy.py index 4a7be9e0bd..821a1f9e41 100644 --- a/heat/common/policy.py +++ b/heat/common/policy.py @@ -47,6 +47,7 @@ class Enforcer(object): self.default_rule = default_rule self.enforcer = policy.Enforcer( CONF, default_rule=default_rule, policy_file=policy_file) + self.log_not_registered = True # register rules self.enforcer.register_defaults(policies.list_rules()) @@ -78,8 +79,11 @@ class Enforcer(object): do_raise=do_raise, exc=exc, action=rule) except policy.PolicyNotRegistered: - with excutils.save_and_reraise_exception(): - LOG.exception(_('Policy not registered.')) + if self.log_not_registered: + with excutils.save_and_reraise_exception(): + LOG.exception(_('Policy not registered.')) + else: + raise else: return self.enforcer.enforce(rule, target, credentials, do_raise, exc=exc, *args, **kwargs) @@ -124,6 +128,7 @@ class ResourceEnforcer(Enforcer): **kwargs): super(ResourceEnforcer, self).__init__( default_rule=default_rule, **kwargs) + self.log_not_registered = False def _enforce(self, context, res_type, scope=None, target=None, is_registered_policy=False):