separate to defs

This commit is contained in:
Maxim Khomutov 2025-03-18 14:43:39 +03:00
parent b493929ce1
commit 448d096f45

View File

@ -24,36 +24,39 @@ def handle_thread_exception(args):
return return
logger.error("Unhandled exception in thread:\n" + "".join(traceback.format_exception(exc_type, exc_value, exc_traceback))) logger.error("Unhandled exception in thread:\n" + "".join(traceback.format_exception(exc_type, exc_value, exc_traceback)))
log_dir = Core.DIR / "logs" log_dir = Core.DIR / "logs"
log_file = log_dir / "info.log" log_file = log_dir / "info.log"
os.makedirs(log_dir, exist_ok=True) os.makedirs(log_dir, exist_ok=True)
os.makedirs(Core.DIR / "cache", exist_ok=True) os.makedirs(Core.DIR / "cache", exist_ok=True)
try:
if os.path.exists(log_file): def zip_logs():
ftime = os.path.getmtime(log_file) try:
index = 1 if os.path.exists(log_file):
while True: ftime = os.path.getmtime(log_file)
zip_path = log_dir / f"{datetime.fromtimestamp(ftime).strftime('%Y-%m-%d')}-{index}.zip" index = 1
if not os.path.exists(zip_path): while True:
break zip_path = log_dir / f"{datetime.fromtimestamp(ftime).strftime('%Y-%m-%d')}-{index}.zip"
index += 1 if not os.path.exists(zip_path):
with zipfile.ZipFile(zip_path, "w") as zipf: break
logs_files = glob.glob(f"{log_dir}/*.log") index += 1
for file in logs_files: with zipfile.ZipFile(zip_path, "w") as zipf:
if os.path.exists(file): logs_files = glob.glob(f"{log_dir}/*.log")
zipf.write(file, os.path.basename(file)) for file in logs_files:
os.remove(file) if os.path.exists(file):
except PermissionError: zipf.write(file, os.path.basename(file))
messagebox.showerror(f"ezSyncer {Core.ver_str}", os.remove(file)
"Some files are locked...\nProgram cannot works in multiplies instances.") except PermissionError:
sys.exit(1) messagebox.showerror(f"ezSyncer {Core.ver_str}",
logger.remove() "Some files are locked...\nProgram cannot works in multiplies instances.")
fmt = "<green>{elapsed} -- {time:YYYY-MM-DD HH:mm:ss.SSS}</green> | <level>{level:<8}</level> | {extra[module]:^12} | {extra[prefix]:<12} | {message}" sys.exit(1)
logger.add(sys.stdout, level="DEBUG", format=fmt, backtrace=True, diagnose=True)
logger.add(log_file, level="INFO", format=fmt, backtrace=False, diagnose=False, rotation="25 MB") def setup():
logger.add(log_dir / "debug.log", level="DEBUG", format=fmt, rotation="10 MB") logger.remove()
logger.add(log_dir / "low_debug.log", level="DEBUG", rotation="10 MB") fmt = "<green>{elapsed} -- {time:YYYY-MM-DD HH:mm:ss.SSS}</green> | <level>{level:<8}</level> | {extra[module]:^12} | {extra[prefix]:<12} | {message}"
sys.excepthook = handle_exception logger.add(sys.stdout, level="DEBUG", format=fmt, backtrace=True, diagnose=True)
threading.excepthook = handle_thread_exception logger.add(log_file, level="INFO", format=fmt, backtrace=False, diagnose=False, rotation="25 MB")
logger.bind(module="LoggerSetup", prefix="init").success("Logger initialized.") logger.add(log_dir / "debug.log", level="DEBUG", format=fmt, rotation="10 MB")
logger.add(log_dir / "low_debug.log", level="DEBUG", rotation="10 MB")
sys.excepthook = handle_exception
threading.excepthook = handle_thread_exception
logger.bind(module="LoggerSetup", prefix="init").success("Logger initialized.")