URL: https://github.com/freeipa/freeipa/pull/922 Author: tomaskrizek Title: #922: logging: make sure logging level is set to proper value Action: opened
PR body: """ During py.test initialization, the value 'debug' is passed instead of logging.DEBUG. Signed-off-by: Tomas Krizek <tkri...@redhat.com> """ To pull the PR as Git branch: git remote add ghfreeipa https://github.com/freeipa/freeipa git fetch ghfreeipa pull/922/head:pr922 git checkout pr922
From 54d5797c89eaaf769b5e93b4e203105015d7de19 Mon Sep 17 00:00:00 2001 From: Tomas Krizek <tkri...@redhat.com> Date: Tue, 18 Jul 2017 16:07:12 +0200 Subject: [PATCH] logging: make sure logging level is set to proper value During py.test initialization, the value 'debug' is passed instead of logging.DEBUG. Signed-off-by: Tomas Krizek <tkri...@redhat.com> --- ipalib/plugable.py | 16 +--------------- ipapython/ipa_log_manager.py | 18 ++++++++++++++++++ ipatests/pytest_plugins/nose_compat.py | 6 ++++-- 3 files changed, 23 insertions(+), 17 deletions(-) diff --git a/ipalib/plugable.py b/ipalib/plugable.py index f6f25e833a..13efe331a9 100644 --- a/ipalib/plugable.py +++ b/ipalib/plugable.py @@ -461,21 +461,7 @@ def bootstrap(self, parser=None, **overrides): if not match: continue - value = match.group(1) - try: - level = int(value) - except ValueError: - try: - level = { - 'debug': logging.DEBUG, - 'info': logging.INFO, - 'warn': logging.WARNING, - 'warning': logging.WARNING, - 'error': logging.ERROR, - 'critical': logging.CRITICAL - }[value] - except KeyError: - raise ValueError('unknown log level (%s)' % value) + level = ipa_log_manager.convert_log_level(match.group(1)) value = getattr(self.env, attr) regexps = re.split('\s*,\s*', value) diff --git a/ipapython/ipa_log_manager.py b/ipapython/ipa_log_manager.py index db38e94988..48feb6ed01 100644 --- a/ipapython/ipa_log_manager.py +++ b/ipapython/ipa_log_manager.py @@ -181,6 +181,24 @@ def standard_logging_setup(filename=None, verbose=False, debug=False, root_logger.addHandler(console_handler) +def convert_log_level(value): + try: + level = int(value) + except ValueError: + try: + level = { + 'debug': logging.DEBUG, + 'info': logging.INFO, + 'warn': logging.WARNING, + 'warning': logging.WARNING, + 'error': logging.ERROR, + 'critical': logging.CRITICAL + }[value] + except KeyError: + raise ValueError('unknown log level (%s)' % value) + return level + + # Single shared instance of log manager log_mgr = sys.modules[__name__] diff --git a/ipatests/pytest_plugins/nose_compat.py b/ipatests/pytest_plugins/nose_compat.py index 8cd6b2dbe0..1fb15571f3 100644 --- a/ipatests/pytest_plugins/nose_compat.py +++ b/ipatests/pytest_plugins/nose_compat.py @@ -23,7 +23,7 @@ import sys import logging -from ipapython.ipa_log_manager import Formatter +from ipapython.ipa_log_manager import Formatter, convert_log_level def pytest_addoption(parser): @@ -61,8 +61,10 @@ def emit(self, record): capture._capturing.resume_capturing() sys.stdout, sys.stderr = orig_stdout, orig_stderr + level = convert_log_level(config.getoption('logging_level')) + handler = LogHandler() handler.setFormatter(Formatter('[%(name)s] %(message)s')) - handler.setLevel(config.getoption('logging_level')) + handler.setLevel(level) root_logger = logging.getLogger() root_logger.addHandler(handler)
_______________________________________________ FreeIPA-devel mailing list -- freeipa-devel@lists.fedorahosted.org To unsubscribe send an email to freeipa-devel-le...@lists.fedorahosted.org