An error occurred while loading the file. Please try again.
loggingFactory.py 1.01 KiB
import logging
import os
from logging.handlers import RotatingFileHandler
LOG_DIR = "logs"
LOG_FILE = "app.log"
LOG_PATH = os.path.join(LOG_DIR, LOG_FILE)
class LoggerFactory:
    #logger.info("Connected with result code %s", str(rc))
    #logger.warning("Neue MAC-Adresse gefunden: %s", mac)
    #logger.error("Failed writing to InfluxDb: %s", e)
    @staticmethod
    def get_logger(name: str, level=logging.DEBUG) -> logging.Logger:
        if not os.path.exists(LOG_DIR):
            os.makedirs(LOG_DIR)
        logger = logging.getLogger(name)
        if logger.hasHandlers():
            return logger  # vermeidet doppelte Handler
        logger.setLevel(level)
        formatter = logging.Formatter(
            '[%(asctime)s] %(levelname)s in %(name)s: %(message)s',
            datefmt='%Y-%m-%d %H:%M:%S'
        file_handler = RotatingFileHandler(LOG_PATH, maxBytes=5_000_000, backupCount=5)
        file_handler.setFormatter(formatter)
        logger.addHandler(file_handler)
        return logger