acmc.logging_config

 1import pandas as pd
 2import logging
 3
 4DEFAULT_LOG_FILE = "acmc.log"
 5
 6
 7def setup_logger(log_level: int = logging.INFO):
 8    """Sets up logger as a singleton outputing to file and sysout syserr"""
 9    # Create a logger
10    logger = logging.getLogger("acmc_logger")
11    logger.setLevel(logging.INFO)
12
13    if not logger.hasHandlers():
14        # Create a file handler that logs to a file
15        file_handler = logging.FileHandler(DEFAULT_LOG_FILE)
16        file_handler.setLevel(logging.INFO)
17
18        # Create a stream handler that prints to the console
19        stream_handler = logging.StreamHandler()
20        stream_handler.setLevel(logging.INFO)
21
22        # Create a formatter for how the log messages should look
23
24        # Add the formatter to both handlers
25        file_formatter = logging.Formatter(
26            "%(asctime)s - - %(levelname)s - %(message)s"
27        )
28        file_handler.setFormatter(file_formatter)
29        stream_formatter = logging.Formatter("[%(levelname)s] - %(message)s")
30        stream_handler.setFormatter(stream_formatter)
31
32        # Add the handlers to the logger
33        logger.addHandler(file_handler)
34        logger.addHandler(stream_handler)
35
36    return logger
37
38
39def set_log_level(log_level: int):
40    """Sets the log level for the acmc logger"""
41    logger = logging.getLogger("acmc_logger")
42    logger.setLevel(log_level)  # Set logger level
43
44    # Also update handlers to match the new level
45    for handler in logger.handlers:
46        handler.setLevel(log_level)
DEFAULT_LOG_FILE = 'acmc.log'
def setup_logger(log_level: int = 20):
 8def setup_logger(log_level: int = logging.INFO):
 9    """Sets up logger as a singleton outputing to file and sysout syserr"""
10    # Create a logger
11    logger = logging.getLogger("acmc_logger")
12    logger.setLevel(logging.INFO)
13
14    if not logger.hasHandlers():
15        # Create a file handler that logs to a file
16        file_handler = logging.FileHandler(DEFAULT_LOG_FILE)
17        file_handler.setLevel(logging.INFO)
18
19        # Create a stream handler that prints to the console
20        stream_handler = logging.StreamHandler()
21        stream_handler.setLevel(logging.INFO)
22
23        # Create a formatter for how the log messages should look
24
25        # Add the formatter to both handlers
26        file_formatter = logging.Formatter(
27            "%(asctime)s - - %(levelname)s - %(message)s"
28        )
29        file_handler.setFormatter(file_formatter)
30        stream_formatter = logging.Formatter("[%(levelname)s] - %(message)s")
31        stream_handler.setFormatter(stream_formatter)
32
33        # Add the handlers to the logger
34        logger.addHandler(file_handler)
35        logger.addHandler(stream_handler)
36
37    return logger

Sets up logger as a singleton outputing to file and sysout syserr

def set_log_level(log_level: int):
40def set_log_level(log_level: int):
41    """Sets the log level for the acmc logger"""
42    logger = logging.getLogger("acmc_logger")
43    logger.setLevel(log_level)  # Set logger level
44
45    # Also update handlers to match the new level
46    for handler in logger.handlers:
47        handler.setLevel(log_level)

Sets the log level for the acmc logger