import logging
from src.task_analysis.root_path import abs_path
from logging.handlers import RotatingFileHandler
class LogConfig:
def get_logger(self):
logs_path = abs_path('logs')
file_name = logs_path + '/run_time.log'
logger = logging.getLogger(__name__)
formatter = logging.Formatter("%(asctime)s %(message)s")
logger.handlers.clear()
handler_console = logging.StreamHandler()
handler_file = RotatingFileHandler(filename=file_name,maxBytes=10240*1024,backupCount=3)
logger.setLevel(logging.DEBUG)
handler_console.setLevel(logging.DEBUG)
handler_file.setLevel(logging.WARNING)
handler_console.setFormatter(formatter)
handler_file.setFormatter(formatter)
logger.addHandler(handler_console)
logger.addHandler(handler_file)
return logger
if __name__ == '__main__':
logger = LogConfig().get_logger()
logger.debug('this is debug')
logger.info('this is info')
logger.error('this is error')
logger.warning('this is warning')
logger.critical('this is critical')