57 lines
1.4 KiB
Python

"""
任务二日志模块
创建独立的 APILogger 实例,日志写入 logs2/ 目录
设计说明:
- 不修改 src/api_logger.py 的 get_logger() 全局单例
- 任务二使用独立的 logger 实例,避免与任务一冲突
- 两个任务可以同时运行,日志互不干扰
"""
import sys
from pathlib import Path
# 将项目根目录添加到 Python 路径
project_root = Path(__file__).parent.parent
sys.path.insert(0, str(project_root))
from src.api_logger import APILogger
# 任务二日志目录
TASK2_LOG_DIR = project_root / "logs2"
# 任务二专用的 logger 实例(模块级单例)
_task2_logger = None
def get_task2_logger() -> APILogger:
"""
获取任务二专用的日志记录器
Returns:
APILogger: 任务二专用的日志记录器实例
"""
global _task2_logger
if _task2_logger is None:
_task2_logger = APILogger(log_dir=str(TASK2_LOG_DIR))
return _task2_logger
if __name__ == "__main__":
print("=== 任务二日志模块测试 ===\n")
logger = get_task2_logger()
# 测试记录一条日志
logger.log_api_call(
api_type="test",
operation="task2/test_log",
request_data={"test": "任务二日志测试"},
response_data={"status": "ok"},
success=True
)
print(f"日志目录: {TASK2_LOG_DIR}")
print(f"日志文件: {logger._get_today_log_file()}")
print("\n测试完成,请检查 logs2/ 目录")