CACHE_DIR = ROGAME_PATH / Path("Cache") PUBLISHED_DIR = ROGAME_PATH / Path("Published") LOGS_DIR = ROGAME_PATH / Path("Logs") WW_INT_PATH = ROGAME_PATH / Path("Localization\\INT\\WinterWar.int") WW_INI_PATH = ROGAME_PATH / Path("Config\\ROGame_WinterWar.ini") ROUI_INI_PATH = ROGAME_PATH / Path("Config\\ROUI.ini") SCRIPT_LOG_PATH = LOGS_DIR / Path("LaunchWinterWar.log") SWS_WW_CONTENT_PATH = Path("steamapps\\workshop\\content\\418460\\") / str(WW_WORKSHOP_ID) logger = Logger(__name__) if LOGS_DIR.exists(): logbook.set_datetime_format("local") _rfh_bubble = False if hasattr(sys, "frozen") else True _rfh = RotatingFileHandler(SCRIPT_LOG_PATH, level="INFO", bubble=_rfh_bubble) _rfh.format_string = ( "[{record.time}] {record.level_name}: {record.channel}: " "{record.func_name}(): {record.message}" ) _rfh.push_application() logger.handlers.append(_rfh) # Check if running as PyInstaller generated frozen executable. FROZEN = True if hasattr(sys, "frozen") else False # No console window in frozen mode. if FROZEN: logger.info("not adding stdout logging handler in frozen mode") else: _sh = StreamHandler(sys.stdout, level="INFO") logger.info("adding logging handler: {h}", h=_sh) _sh.format_string = ( "[{record.time}] {record.level_name}: {record.channel}: "
p = os.environ['FBPATH'] if not os.path.isdir(p): os.system('mkdir -p {}'.format(p)) file_path = os.path.expanduser(os.path.join(p, 'logs')) if os.path.isdir(file_path): backup_count = 7 max_size = 1024 * 1024 * 1024 # 1Gi file_level = DEBUG each_size = max_size / (backup_count + 1) filename = os.path.join(file_path, 'ltcli-rotate.log') rotating_file_handler = RotatingFileHandler(filename=filename, level=file_level, bubble=True, max_size=each_size, backup_count=backup_count) rotating_file_handler.format_string = formatter['file'] rotating_file_handler.push_application() logger.debug('start logging on file: {}'.format(filename)) else: try: os.mkdir(file_path) except Exception: logger.error("CreateDirError: {}".format(file_path)) msg = message.get('error_logging_in_file') logger.warning(msg) def set_level(level): """Change log level. :param level: debug / info / warning / error