mirror of
https://github.com/RVC-Boss/GPT-SoVITS.git
synced 2025-04-05 04:22:46 +08:00
66 lines
2.4 KiB
Python
66 lines
2.4 KiB
Python
import logging
|
||
import os
|
||
import datetime
|
||
import Ref_Audio_Selector.config_param.config_params as params
|
||
|
||
|
||
def create_general_logger():
|
||
# 获取当前日期,用于文件名和日志内容
|
||
current_date = datetime.datetime.now().strftime('%Y-%m-%d')
|
||
|
||
# 创建一个用于控制台输出的处理器,并设置日志级别
|
||
console_handler = logging.StreamHandler()
|
||
# console_handler.setLevel(logging.INFO)
|
||
# 可以设置控制台输出的格式
|
||
console_formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s')
|
||
console_handler.setFormatter(console_formatter)
|
||
console_handler.encoding = 'utf-8' # 设置字符编码为utf-8
|
||
|
||
os.makedirs(params.log_dir, exist_ok=True)
|
||
|
||
# 创建一个用于常规日志的处理器
|
||
general_handler = logging.FileHandler(f"{params.log_dir}/{current_date}.log", mode='a', encoding='utf-8')
|
||
# general_handler.setLevel(logging.INFO)
|
||
general_formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s')
|
||
general_handler.setFormatter(general_formatter)
|
||
|
||
# 配置一个常规的logger
|
||
general_logger = logging.getLogger('general')
|
||
level = logging.getLevelName(params.log_level)
|
||
general_logger.setLevel(level)
|
||
general_logger.addHandler(console_handler)
|
||
general_logger.addHandler(general_handler)
|
||
|
||
# 配置根logger,以防万一
|
||
logging.basicConfig(level=logging.WARNING, handlers=[general_handler])
|
||
|
||
return general_logger
|
||
|
||
|
||
def create_performance_logger():
|
||
# 获取当前日期,用于文件名和日志内容
|
||
current_date = datetime.datetime.now().strftime('%Y-%m-%d')
|
||
|
||
os.makedirs(params.time_log_print_dir, exist_ok=True)
|
||
|
||
# 创建一个专用于性能监控日志的处理器
|
||
performance_handler = logging.FileHandler(
|
||
f"{params.time_log_print_dir}/{current_date}.log", mode='a', encoding='utf-8')
|
||
# performance_handler.setLevel(logging.INFO)
|
||
performance_formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s')
|
||
performance_handler.setFormatter(performance_formatter)
|
||
|
||
# 配置一个专门用于性能监控的logger
|
||
performance_logger = logging.getLogger('performance')
|
||
performance_logger.setLevel(logging.INFO)
|
||
performance_logger.addHandler(performance_handler)
|
||
|
||
return performance_logger
|
||
|
||
|
||
def setup_logging():
|
||
return create_general_logger(), create_performance_logger()
|
||
|
||
|
||
logger, p_logger = setup_logging()
|