from core.utils.log.local_log import Local from core.utils.log.aliyun_log import AliyunLogger class LoggerManager: """ 日志管理器 - 优化版 """ _local_loggers = {} _aliyun_loggers = {} @staticmethod def get_logger(platform: str = "system", mode: str = "crawler", log_to_console=True): key = f"{platform}_{mode}" if key not in LoggerManager._local_loggers: LoggerManager._local_loggers[key] = Local.init_logger( platform=platform, mode=mode, log_to_console=log_to_console ) return LoggerManager._local_loggers[key] @staticmethod def get_aliyun_logger(platform: str = "system", mode: str = "crawler", env: str = "prod"): key = f"{platform}_{mode}" if key not in LoggerManager._aliyun_loggers: LoggerManager._aliyun_loggers[key] = AliyunLogger( platform=platform, mode=mode, env=env ) return LoggerManager._aliyun_loggers[key]