diff options
| author | 2020-04-10 22:53:19 +0100 | |
|---|---|---|
| committer | 2020-04-10 22:53:19 +0100 | |
| commit | 61f050e3292ce0037b16f4b515ebcab3bb7dd46a (patch) | |
| tree | c10290442a4e7340019e5321cf6918d3e93b2c0a /src/Logging.py | |
| parent | "mi" -> "m" for minute (diff) | |
| signature | ||
add bot.conf options so we can disable given log files
Diffstat (limited to 'src/Logging.py')
| -rw-r--r-- | src/Logging.py | 42 |
1 files changed, 24 insertions, 18 deletions
diff --git a/src/Logging.py b/src/Logging.py index ec8574bd..47096433 100644 --- a/src/Logging.py +++ b/src/Logging.py @@ -27,7 +27,10 @@ class HookedHandler(logging.StreamHandler): class Log(object): _hooks: typing.List[typing.Callable[[int, str], None]] - def __init__(self, to_file: bool, level: str, location: str): + def __init__(self, to_file: bool, + level: str, + location: str, + file_levels: typing.List[str]): self._hooks = [] logging.addLevelName(LEVELS["trace"], "TRACE") @@ -52,25 +55,28 @@ class Log(object): self.logger.addHandler(hook_handler) if to_file: - trace_path = os.path.join(location, "trace.log") - trace_handler = logging.handlers.TimedRotatingFileHandler( - trace_path, when="midnight", backupCount=5) - trace_handler.setLevel(LEVELS["trace"]) - trace_handler.setFormatter(formatter) - self.logger.addHandler(trace_handler) + if "TRACE" in file_levels: + trace_path = os.path.join(location, "trace.log") + trace_handler = logging.handlers.TimedRotatingFileHandler( + trace_path, when="midnight", backupCount=5) + trace_handler.setLevel(LEVELS["trace"]) + trace_handler.setFormatter(formatter) + self.logger.addHandler(trace_handler) - info_path = os.path.join(location, "info.log") - info_handler = logging.handlers.TimedRotatingFileHandler( - info_path, when="midnight", backupCount=1) - info_handler.setLevel(LEVELS["info"]) - info_handler.setFormatter(formatter) - self.logger.addHandler(info_handler) + if "INFO" in file_levels: + info_path = os.path.join(location, "info.log") + info_handler = logging.handlers.TimedRotatingFileHandler( + info_path, when="midnight", backupCount=1) + info_handler.setLevel(LEVELS["info"]) + info_handler.setFormatter(formatter) + self.logger.addHandler(info_handler) - warn_path = os.path.join(location, "warn.log") - warn_handler = logging.FileHandler(warn_path) - warn_handler.setLevel(LEVELS["warn"]) - warn_handler.setFormatter(formatter) - self.logger.addHandler(warn_handler) + if "WARN" in file_levels: + warn_path = os.path.join(location, "warn.log") + warn_handler = logging.FileHandler(warn_path) + warn_handler.setLevel(LEVELS["warn"]) + warn_handler.setFormatter(formatter) + self.logger.addHandler(warn_handler) def hook(self, func: typing.Callable[[int, str], None]): self._hooks.append(func) |
