From 109c4be3b1df1e626199556b13e72becb592e296 Mon Sep 17 00:00:00 2001 From: Christian Herdtweck Date: Wed, 29 Jun 2016 17:02:08 +0200 Subject: [PATCH] removed param max_lines from I2nLogger: more trouble that it is worth --- src/log_helpers.py | 48 +++--------------------------------------------- 1 files changed, 3 insertions(+), 45 deletions(-) diff --git a/src/log_helpers.py b/src/log_helpers.py index c275b13..3794f34 100644 --- a/src/log_helpers.py +++ b/src/log_helpers.py @@ -186,12 +186,12 @@ class I2nLogger: constructor to avoid such situtations ..note:: Do not change or use the underlying logger or functionality here - (in particular line counting, get_level) is no longer reliable! + (in particular, get_level) is no longer reliable! """ def __init__(self, name, level=INFO, fmt=DEFAULT_SHORT_LEVEL_FORMAT, datefmt=DEFAULT_SHORT_LEVEL_DATE_FORMAT, - streams=STDOUT, files=None, max_lines=None): + streams=STDOUT, files=None): """ creates a I2nLogger; forwards args to logging.getLogger @@ -205,8 +205,6 @@ class I2nLogger: :param streams: list/tuple of or a single stream to log to, default is STDOUT (=sys.stdout) :param files: list/tuple or single file name to log to - :param max_lines: number > 0 to limit number of output calls to that - number; give None (default) to no limit :raise: ValueError if an I2nLogger with the same name exists already """ @@ -251,9 +249,6 @@ class I2nLogger: new_handler.setLevel(self._level) self._log.addHandler(new_handler) - # remember max_lines - self.set_max_lines(max_lines) - # remember that this logger is a I2nLogger _i2n_loggers[name] = self @@ -289,17 +284,7 @@ class I2nLogger: def log(self, level, message, *args, **kwargs): if level >= self._level: - if self._line_counter == self._max_lines: - self._log.log(ERROR, - 'reached max number of output lines ({0}) ' - '-- will not log anything any more!' - .format(self._line_counter)) - self._line_counter += 1 - elif self._line_counter > self._max_lines: - return - else: - self._log.log(level, message.format(*args), **kwargs) - self._line_counter += 1 + self._log.log(level, message.format(*args), **kwargs) def log_count_if_interesting(self, count, level=INFO, counter_name=None): """ Log value of a counter in gradually coarser intervals @@ -335,32 +320,6 @@ class I2nLogger: for handler in self._log.handlers: handler.setLevel(self._level) - def set_max_lines(self, max_lines): - """ limit number of lines this produces; give None to remove limit - - resets the line counter - """ - if max_lines > 0: - self._max_lines = max_lines - elif max_lines < 0 or (not max_lines): - self._max_lines = None - else: - raise ValueError('unexpected value for max_lines: {0}!' - .format(max_lines)) - self._line_counter = 0 - - def get_max_lines(self): - """ return current value for line limit """ - return self._max_lines - - def exceeded_max_lines(self): - """ return True if nothing will be logged because max_lines was reached - """ - if self._max_lines: - return self._line_counter >= self._max_lines - else: - return False - def n_digits(number): """ returns the number of digits a number has in decimal format @@ -440,7 +399,6 @@ def test_short_level_format(): # done logger.info('done testing') - def test_get_logger(): log = get_logger('logger_test') log2 = get_logger('logger_test') -- 1.7.1