import time
import os
import logging
path = os.path.dirname(os.path.abspath(__file__)).rsplit("\\", 1)[0]
class LogUtils:
    def __init__(self):
        self.logfile_path = path + "\logs"
        self.logger = logging.getLogger(__name__)
        self.logger.setLevel(level=logging.INFO)
        formatter = logging.Formatter('%(asctime)s - %(filename)s[line:%(lineno)d] - %(levelname)s: %(message)s')
        self.log_name_path = os.path.join(self.logfile_path, "Logs_Test_%s" % time.strftime('%Y_%m_%d'))
        self.file_log = logging.FileHandler(self.log_name_path, 'a', encoding='utf-8')
        self.file_log.setFormatter(formatter)
        self.file_log.setLevel(logging.INFO)
        self.logger.addHandler(self.file_log)
        self.file_log.close()
        self.console = logging.StreamHandler()
        self.console.setLevel(logging.INFO)
        self.console.setFormatter(formatter)
        self.logger.addHandler(self.console)
        self.console.close()
    def get_log(self):
        return self.logger
logger = LogUtils().get_log()
if __name__ == '__main__':
    logger.info("hahah")