From a9242b2f3a9ea7affeb9d3a67bb9f4c2c83c36ac Mon Sep 17 00:00:00 2001 From: pablo Date: Thu, 26 Mar 2020 11:18:14 +0100 Subject: [PATCH] Added logging config. --- core/my_logger.py | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 core/my_logger.py diff --git a/core/my_logger.py b/core/my_logger.py new file mode 100644 index 0000000..2d75c6b --- /dev/null +++ b/core/my_logger.py @@ -0,0 +1,31 @@ +import logging +import sys + + +class StreamToLogger(object): + """ + Fake file-like stream object that redirects writes to a logger instance. + """ + + def __init__(self, logger, log_level=logging.INFO): + self.logger = logger + self.log_level = log_level + self.linebuf = "" + + def write(self, buf): + for line in buf.rstrip().splitlines(): + self.logger.log(self.log_level, line.rstrip()) + + +logging.basicConfig( + filename="log.log", + format="%(asctime)s:%(levelname)s:%(name)s:%(message)s", + filemode="a+", + level=logging.DEBUG, +) +stdout_logger = logging.getLogger("STDOUT") +sl = StreamToLogger(stdout_logger, logging.INFO) +sys.stdout = sl +stderr_logger = logging.getLogger("STDERR") +sl = StreamToLogger(stderr_logger, logging.ERROR) +sys.stderr = sl