From faa4e1472ed9a626e9e96fc235aab0b33fe65734 Mon Sep 17 00:00:00 2001 From: James Vega Date: Fri, 19 Oct 2007 03:59:08 +0000 Subject: [PATCH] Really fix the issue where the bot flushing its config would cause logging to act as if the level were set to INFO. --- src/log.py | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/src/log.py b/src/log.py index 786e39d49..c8d27d192 100644 --- a/src/log.py +++ b/src/log.py @@ -204,6 +204,7 @@ _stdoutHandler = StdoutStreamHandler(sys.stdout) class ValidLogLevel(registry.String): """Invalid log level.""" + handler = None minimumLevel = -1 def set(self, s): s = s.upper() @@ -216,6 +217,8 @@ class ValidLogLevel(registry.String): self.error() if level < self.minimumLevel: self.error() + if self.handler is not None: + self.handler.setLevel(level) self.setValue(level) def __str__(self): @@ -229,16 +232,12 @@ class ValidLogLevel(registry.String): class LogLevel(ValidLogLevel): """Invalid log level. Value must be either DEBUG, INFO, WARNING, ERROR, or CRITICAL.""" - def setValue(self, v): - ValidLogLevel.setValue(self, v) - _handler.setLevel(self.value) + handler = _handler class StdoutLogLevel(ValidLogLevel): """Invalid log level. Value must be either DEBUG, INFO, WARNING, ERROR, or CRITICAL.""" - def setValue(self, v): - ValidLogLevel.setValue(self, v) - _stdoutHandler.setLevel(self.value) + handler = _stdoutHandler conf.registerGroup(conf.supybot, 'log') conf.registerGlobalValue(conf.supybot.log, 'format',