57 lines
1.4 KiB
Python
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/ 目录")
|