Finalize Fromatter.

This commit is contained in:
Sebastian Lenzlinger 2024-06-25 23:42:29 +02:00
parent fdc59cf93a
commit 8dc7d892e6

View File

@ -8,24 +8,24 @@ from logging.handlers import RotatingFileHandler
import sys
APP_NAME = 'iottb'
MAX_VERBOSITY = 3
CONSOLE_LOG_FORMATS = {
0: '%(levelname)s - %(message)s',
1: '%(levelname)s - %(module)s - %(message)s',
2: '%(levelname)s - %(asctime)s - %(module)s - %(funcName)s - %(lineno)d - %(message)s'
}
LOGFILE_LOG_FORMAT = {
0: '%(levelname)s - %(asctime)s - %(module)s - %(message)s',
1: '%(levelname)s - %(asctime)s - %(module)s - %(funcName)s - %(message)s',
2: '%(levelname)s - %(asctime)s - %(module)s - %(funcName)s - %(lineno)d - %(message)s'
}
MAX_VERBOSITY = len(CONSOLE_LOG_FORMATS) - 1
assert len(LOGFILE_LOG_FORMAT) == len(CONSOLE_LOG_FORMATS), 'Log formats must be same size'
def setup_logging(verbosity, debug):
# Formats
console_log_formats = {
0: '%(levelname)s - %(message)s',
1: '%(levelname)s - %(module)s - %(message)s',
2: '%(levelname)s - %(asctime)s - %(module)s - %(funcName)s - %(lineno)d - %(message)s'
}
file_log_formats = {
0: '%(levelname)s - %(asctime)s - %(module)s - %(message)s',
1: '%(levelname)s - %(asctime)s - %(module)s - %(funcName)s - %(message)s',
2: '%(levelname)s - %(asctime)s - %(module)s - %(funcName)s - %(lineno)d - %(message)s'
}
# set default log level, change later based on parameters
""" Setup root logger for iottb """
log_level = logging.ERROR
logger = logging.getLogger()
date_format = '%Y-%m-%d %H:%M:%S'
@ -36,7 +36,7 @@ def setup_logging(verbosity, debug):
log_level = logging.INFO
assert verbosity <= MAX_VERBOSITY, f'Verbosity must be <= {MAX_VERBOSITY}'
console_handler = logging.StreamHandler(sys.stdout)
console_handler.setFormatter(logging.Formatter(console_log_formats[verbosity], datefmt=date_format))
console_handler.setFormatter(logging.Formatter(CONSOLE_LOG_FORMATS[verbosity], datefmt=date_format))
console_handler.setLevel(logging.DEBUG) # can keep at debug since it depends on global level?
logger.addHandler(console_handler)
@ -45,10 +45,10 @@ def setup_logging(verbosity, debug):
# Logfile logs INFO+, no debugs though
file_handler = RotatingFileHandler(f'{APP_NAME}.log', maxBytes=10240, backupCount=5)
file_handler.setFormatter(logging.Formatter(file_log_formats[verbosity], datefmt=date_format))
file_handler.setFormatter(logging.Formatter(LOGFILE_LOG_FORMAT[verbosity], datefmt=date_format))
file_handler.setLevel(logging.INFO)
# finnish setting up logging
# finnish root logger setup
logger.addHandler(file_handler)
logger.setLevel(log_level)
return logger