From 965197cd6a7186b558b677d3f298f1ceb3d21263 Mon Sep 17 00:00:00 2001 From: grglcy Date: Sat, 18 Jan 2025 18:50:10 +0000 Subject: [PATCH] Add debug log level --- src/log/__init__.py | 7 ++++--- src/log/log.py | 11 ++++++++--- src/log/logcat.py | 9 +++++++-- 3 files changed, 19 insertions(+), 8 deletions(-) diff --git a/src/log/__init__.py b/src/log/__init__.py index eaaf16f..1552873 100644 --- a/src/log/__init__.py +++ b/src/log/__init__.py @@ -1,6 +1,7 @@ -INFO=0 -WARNING=5 -ERROR=10 +DEBUG=0 +INFO=5 +WARNING=10 +ERROR=20 from .log import Log from .logcat import LogCat diff --git a/src/log/log.py b/src/log/log.py index fb6ee91..a77a847 100644 --- a/src/log/log.py +++ b/src/log/log.py @@ -2,11 +2,11 @@ from datetime import datetime from multiprocessing import Lock from threading import Thread from queue import Queue, Empty -from . import INFO, WARNING, ERROR +from . import DEBUG, INFO, WARNING, ERROR class Log(object): - def __init__(self, path, queue=None, print_output=True, timeout=1, level=WARNING): + def __init__(self, path, queue=None, print_output=True, timeout=1, level=DEBUG): self.__terminated = False self.level = level self.file_lock = Lock() @@ -78,4 +78,9 @@ class Log(object): self.set_log_file() with self.file_lock: with open(self.log_file, mode='a') as log_file: - log_file.writelines(log_msg_list) + for line in log_msg_list: + try: + log_file.write(line) + except Exception as e: + print(f"Error writing line{line}") + print(e) diff --git a/src/log/logcat.py b/src/log/logcat.py index c958b79..dfe7a18 100644 --- a/src/log/logcat.py +++ b/src/log/logcat.py @@ -1,6 +1,6 @@ from datetime import datetime from multiprocessing import Queue -from . import INFO, WARNING, ERROR +from . import DEBUG, INFO, WARNING, ERROR class LogCat(object): @@ -13,6 +13,9 @@ class LogCat(object): time = datetime.now().strftime("%Y-%m-%dT%H:%M:%S") self.queue.put((level, f"{self.level_string(level)} | {time} - {self.category.upper()}.{function.upper()}: {message}")) + def debug(self, function: str, message: str) -> None: + self._write(DEBUG, function, message) + def info(self, function: str, message: str) -> None: self._write(INFO, function, message) @@ -24,7 +27,9 @@ class LogCat(object): @staticmethod def level_string(level: int) -> str: - if level == INFO: + if level == DEBUG: + return "DEBG" + elif level == INFO: return "INFO" elif level == WARNING: return "WARN"