summaryrefslogtreecommitdiffstats
path: root/nova/log.py
diff options
context:
space:
mode:
authorVishvananda Ishaya <vishvananda@gmail.com>2011-02-21 01:07:46 -0800
committerVishvananda Ishaya <vishvananda@gmail.com>2011-02-21 01:07:46 -0800
commite773c16e1bce0e00b269394d1ed20d15884827ff (patch)
tree3bc91633d2b235407cc46979c30368a314a2eb98 /nova/log.py
parentbfba5b2cf8ade746d74485bd76f9d60238ccb2ea (diff)
downloadnova-e773c16e1bce0e00b269394d1ed20d15884827ff.tar.gz
nova-e773c16e1bce0e00b269394d1ed20d15884827ff.tar.xz
nova-e773c16e1bce0e00b269394d1ed20d15884827ff.zip
simplify logic for parsing log level flags
Diffstat (limited to 'nova/log.py')
-rw-r--r--nova/log.py25
1 files changed, 8 insertions, 17 deletions
diff --git a/nova/log.py b/nova/log.py
index 2b43f7311..0cd42d00e 100644
--- a/nova/log.py
+++ b/nova/log.py
@@ -145,25 +145,14 @@ class NovaLogger(logging.Logger):
logging.Logger.__init__(self, name, level)
self.setup_from_flags()
- @staticmethod
- def _get_level_from_flags(name):
- # if exactly "nova", or a child logger, honor the verbose flag
- if (name == "nova" or name.startswith("nova.")) and FLAGS.verbose:
- return 'DEBUG'
+ def setup_from_flags(self):
+ """Setup logger from flags"""
for pair in FLAGS.default_log_levels:
logger, _sep, level = pair.partition('=')
# NOTE(todd): if we set a.b, we want a.b.c to have the same level
# (but not a.bc, so we check the dot)
- if name == logger:
- return level
- if name.startswith(logger) and name[len(logger)] == '.':
- return level
- return 'INFO'
-
- def setup_from_flags(self):
- """Setup logger from flags"""
- level_name = self._get_level_from_flags(self.name)
- self.setLevel(globals()[level_name])
+ if self.name == logger or self.name.startswith("%s." % logger):
+ self.setLevel(globals()[level])
def _log(self, level, msg, args, exc_info=None, extra=None, context=None):
"""Extract context from any log call"""
@@ -281,8 +270,10 @@ class NovaRootLogger(NovaLogger):
else:
self.removeHandler(_filelog)
self.addHandler(_streamlog)
-
- return NovaLogger.setup_from_flags(self)
+ if FLAGS.verbose:
+ self.setLevel(DEBUG)
+ else:
+ self.setLevel(INFO)
if not isinstance(logging.root, NovaRootLogger):