♻️ refactor(logger): 将日志管理器路径从logger更新为logger_manager并优化数据返回格式

This commit is contained in:
Qihang Zhang 2025-04-19 19:31:58 +08:00
parent fb3ed8f74a
commit 1abff8b130
3 changed files with 10 additions and 10 deletions

View File

@ -7,7 +7,7 @@ from tqdm import tqdm
from config_manager import get_config_manager
from database_manager import DatabaseManager
from logger import get_logger
from logger_manager import get_logger
# 模块级别的配置
config = get_config_manager()
@ -79,7 +79,7 @@ class DataFetcher:
# 确定需要获取的日期
if not force_update:
# 从数据库获取已有的交易日期
existing_dates = DataReader.get_existing_trade_dates(table_name=table_name)
existing_dates = DataReader.get_existing_table_trade_dates(table_name=table_name)
# 筛选出需要新获取的日期
dates_to_fetch = [date for date in all_trade_dates if date not in existing_dates]
else:
@ -152,7 +152,7 @@ class DataReader:
@staticmethod
def get_trade_cal(start_date=None, end_date=None, update=False):
"""
获取指定时间段内的交易日历
从数据库获取交易日历如果表不存在则自动拉取数据并截取指定日期范围内的交易日历工作日
参数
start_date (str): 开始日期格式'YYYYMMDD'
end_date (str): 结束日期格式'YYYYMMDD'
@ -185,9 +185,9 @@ class DataReader:
return []
@staticmethod
def get_existing_trade_dates(table_name):
def get_existing_table_trade_dates(table_name):
"""
从数据库中获取已有的交易日期
查询指定表中已存在的交易日期
参数:
table_name (str): 数据表名称
返回:
@ -196,14 +196,14 @@ class DataReader:
# 先检查表是否存在
if not db_manager.table_exists(table_name):
logger.debug(f"'{table_name}' 不存在")
return set()
return []
try:
# 使用query方法获取不重复的交易日期
query_result = db_manager.query(f"SELECT DISTINCT trade_date FROM {table_name}")
# 将查询结果转换为集合并返回
return set(query_result['trade_date'].values)
return list(set(query_result['trade_date'].values))
except Exception as e:
logger.error(f"获取已存在交易日期时出错: {e}")
logger.debug(f"完整的错误追踪信息:\n{traceback.format_exc()}")
return set()
return []

View File

@ -5,7 +5,7 @@ import pandas as pd
from sqlalchemy import create_engine, text, inspect
from config_manager import get_config_manager
from logger import get_logger
from logger_manager import get_logger
class DatabaseManager:

View File

@ -5,7 +5,7 @@ import numpy as np
import pandas as pd
from config_manager import get_config_manager
from database_manager import DatabaseManager
from logger import get_logger
from logger_manager import get_logger
class MoneyflowAnalyzer: