| import logging |
| import os |
|
|
| OK = '\033[92m' |
| WARNING = '\033[93m' |
| FAIL = '\033[91m' |
| END = '\033[0m' |
|
|
| PINK = '\033[95m' |
| BLUE = '\033[94m' |
| GREEN = OK |
| RED = FAIL |
| WHITE = END |
| YELLOW = WARNING |
|
|
| class colorlogger(): |
| def __init__(self, log_dir, log_name='train_logs.txt'): |
| |
| self._logger = logging.getLogger(log_name) |
| self._logger.setLevel(logging.INFO) |
| log_file = os.path.join(log_dir, log_name) |
| if not os.path.exists(log_dir): |
| os.makedirs(log_dir) |
| file_log = logging.FileHandler(log_file, mode='a') |
| file_log.setLevel(logging.INFO) |
| console_log = logging.StreamHandler() |
| console_log.setLevel(logging.INFO) |
| formatter = logging.Formatter( |
| "{}%(asctime)s{} %(message)s".format(GREEN, END), |
| "%m-%d %H:%M:%S") |
| file_log.setFormatter(formatter) |
| console_log.setFormatter(formatter) |
| self._logger.addHandler(file_log) |
| self._logger.addHandler(console_log) |
|
|
| def debug(self, msg): |
| self._logger.debug(str(msg)) |
|
|
| def info(self, msg): |
| self._logger.info(str(msg)) |
|
|
| def warning(self, msg): |
| self._logger.warning(WARNING + 'WRN: ' + str(msg) + END) |
|
|
| def critical(self, msg): |
| self._logger.critical(RED + 'CRI: ' + str(msg) + END) |
|
|
| def error(self, msg): |
| self._logger.error(RED + 'ERR: ' + str(msg) + END) |
|
|
|
|