本文档详细列出了项目中各个模块应该使用的日志服务,作为日志改造的实施指南。项目日志系统分为4个独立模块:app、agent、vanna、data_pipeline。
文件 | 当前日志方式 | 目标Logger | 说明 |
---|---|---|---|
agent/citu_agent.py |
get_agent_logger("CituAgent") |
主Agent类,包含大量调试信息 | |
agent/classifier.py |
get_agent_logger("Classifier") |
问题分类器 | |
agent/config.py |
get_agent_logger("Config") |
配置管理 | |
agent/state.py |
无 | 无需日志 | 仅定义数据结构 |
文件 | 当前日志方式 | 目标Logger | 说明 |
---|---|---|---|
agent/tools/general_chat.py |
get_agent_logger("GeneralChat") |
聊天工具 | |
agent/tools/sql_execution.py |
get_agent_logger("SQLExecution") |
SQL执行工具 | |
agent/tools/sql_generation.py |
get_agent_logger("SQLGeneration") |
SQL生成工具 | |
agent/tools/summary_generation.py |
get_agent_logger("SummaryGeneration") |
摘要生成工具 | |
agent/tools/utils.py |
无 | get_agent_logger("ToolUtils") |
工具函数(如需日志) |
文件 | 当前日志方式 | 目标Logger | 说明 |
---|---|---|---|
data_pipeline/schema_workflow.py |
logging.getLogger("schema_tools.SchemaWorkflowOrchestrator") | get_data_pipeline_logger("SchemaWorkflow") |
工作流编排器 |
data_pipeline/metadata_only_generator.py |
get_data_pipeline_logger("MetadataGenerator") |
元数据生成器 | |
data_pipeline/config.py |
无 | 无需日志 | 配置文件 |
文件 | 当前日志方式 | 目标Logger | 说明 |
---|---|---|---|
data_pipeline/ddl_generation/training_data_agent.py |
logging.getLogger("schema_tools.Agent") | get_data_pipeline_logger("TrainingDataAgent") |
训练数据代理 |
data_pipeline/ddl_generation/ddl_md_generator.py |
无具体日志 | get_data_pipeline_logger("DDLMDGenerator") |
DDL/MD生成器 |
文件 | 当前日志方式 | 目标Logger | 说明 |
---|---|---|---|
data_pipeline/qa_generation/qs_agent.py |
logging.getLogger("schema_tools.QSAgent") | get_data_pipeline_logger("QSAgent") |
Question-SQL代理 |
data_pipeline/qa_generation/qs_generator.py |
无具体日志 | get_data_pipeline_logger("QSGenerator") |
Question-SQL生成器 |
文件 | 当前日志方式 | 目标Logger | 说明 |
---|---|---|---|
data_pipeline/analyzers/md_analyzer.py |
logging.getLogger("schema_tools.MDFileAnalyzer") | get_data_pipeline_logger("MDAnalyzer") |
MD文件分析器 |
data_pipeline/analyzers/theme_extractor.py |
logging.getLogger("schema_tools.ThemeExtractor") | get_data_pipeline_logger("ThemeExtractor") |
主题提取器 |
文件 | 当前日志方式 | 目标Logger | 说明 |
---|---|---|---|
data_pipeline/validators/sql_validator.py |
logging.getLogger("schema_tools.SQLValidator") | get_data_pipeline_logger("SQLValidator") |
SQL验证器 |
data_pipeline/validators/sql_validation_agent.py |
logging.getLogger("schema_tools.SQLValidationAgent") | get_data_pipeline_logger("SQLValidationAgent") |
SQL验证代理 |
data_pipeline/validators/file_count_validator.py |
logging.getLogger("schema_tools.FileCountValidator") | get_data_pipeline_logger("FileCountValidator") |
文件计数验证器 |
data_pipeline/validators/sql_validate_cli.py |
get_data_pipeline_logger("SQLValidateCLI") |
SQL验证命令行工具 | |
data_pipeline/validators/sql_validation_example.py |
get_data_pipeline_logger("SQLValidationExample") |
SQL验证示例 |
文件 | 当前日志方式 | 目标Logger | 说明 |
---|---|---|---|
data_pipeline/trainer/vanna_trainer.py |
get_data_pipeline_logger("VannaTrainer") |
Vanna训练器 | |
data_pipeline/trainer/run_training.py |
依赖其他模块日志 | get_data_pipeline_logger("RunTraining") |
训练运行脚本 |
文件 | 当前日志方式 | 目标Logger | 说明 |
---|---|---|---|
data_pipeline/utils/logger.py |
自定义日志系统 | 直接删除或改造为空函数 | 原日志工具,直接使用新系统 |
data_pipeline/utils/table_parser.py |
logging.getLogger("schema_tools.TableListParser") | get_data_pipeline_logger("TableParser") |
表解析器 |
data_pipeline/utils/system_filter.py |
logging.getLogger("schema_tools.SystemTableFilter") | get_data_pipeline_logger("SystemFilter") |
系统表过滤器 |
data_pipeline/utils/permission_checker.py |
logging.getLogger("schema_tools.DatabasePermissionChecker") | get_data_pipeline_logger("PermissionChecker") |
权限检查器 |
data_pipeline/utils/large_table_handler.py |
logging.getLogger("schema_tools.LargeTableHandler") | get_data_pipeline_logger("LargeTableHandler") |
大表处理器 |
data_pipeline/utils/file_manager.py |
logging.getLogger("schema_tools.FileNameManager") | get_data_pipeline_logger("FileManager") |
文件管理器 |
文件 | 当前日志方式 | 目标Logger | 说明 |
---|---|---|---|
data_pipeline/tools/base.py |
logging.getLogger + logging.debug | get_data_pipeline_logger("ToolBase") |
工具基类 |
data_pipeline/tools/comment_generator.py |
依赖base.py | get_data_pipeline_logger("CommentGenerator") |
注释生成器 |
data_pipeline/tools/data_sampler.py |
依赖base.py | get_data_pipeline_logger("DataSampler") |
数据采样器 |
data_pipeline/tools/database_inspector.py |
依赖base.py | get_data_pipeline_logger("DatabaseInspector") |
数据库检查器 |
data_pipeline/tools/ddl_generator.py |
依赖base.py | get_data_pipeline_logger("DDLGenerator") |
DDL生成器 |
data_pipeline/tools/doc_generator.py |
依赖base.py | get_data_pipeline_logger("DocGenerator") |
文档生成器 |
文件 | 当前日志方式 | 目标Logger | 说明 |
---|---|---|---|
core/vanna_llm_factory.py |
无 | get_vanna_logger("VannaFactory") |
Vanna实例工厂 |
core/embedding_function.py |
无 | get_vanna_logger("EmbeddingFunction") |
嵌入函数 |
文件 | 当前日志方式 | 目标Logger | 说明 |
---|---|---|---|
customllm/base_llm_chat.py |
get_vanna_logger("BaseLLMChat") |
LLM聊天基类 | |
customllm/deepseek_chat.py |
继承base_llm_chat | get_vanna_logger("DeepSeekChat") |
DeepSeek聊天实现 |
customllm/ollama_chat.py |
继承base_llm_chat | get_vanna_logger("OllamaChat") |
Ollama聊天实现 |
customllm/qianwen_chat.py |
继承base_llm_chat | get_vanna_logger("QianwenChat") |
千问聊天实现 |
文件 | 当前日志方式 | 目标Logger | 说明 |
---|---|---|---|
customembedding/ollama_embedding.py |
无 | get_vanna_logger("OllamaEmbedding") |
Ollama嵌入实现 |
文件 | 当前日志方式 | 目标Logger | 说明 |
---|---|---|---|
custompgvector/pgvector.py |
logging.info/error | get_vanna_logger("PGVector") |
PostgreSQL向量存储 |
文件 | 当前日志方式 | 目标Logger | 说明 |
---|---|---|---|
common/vanna_instance.py |
无 | get_vanna_logger("VannaInstance") |
Vanna实例管理 |
common/vanna_combinations.py |
无 | get_vanna_logger("VannaCombinations") |
Vanna组合配置 |
文件 | 当前日志方式 | 目标Logger | 说明 |
---|---|---|---|
citu_app.py |
无 | get_app_logger("CituApp") |
主应用入口 |
flask_app.py |
无 | get_app_logger("FlaskApp") |
Flask应用(暂不考虑) |
chainlit_app.py |
无 | get_app_logger("ChainlitApp") |
Chainlit应用(暂不考虑) |
app_config.py |
无 | 无需日志 | 应用配置 |
文件 | 当前日志方式 | 目标Logger | 说明 |
---|---|---|---|
common/qa_feedback_manager.py |
get_app_logger("QAFeedbackManager") |
QA反馈管理 | |
common/redis_conversation_manager.py |
无 | get_app_logger("RedisConversation") |
Redis对话管理 |
common/embedding_cache_manager.py |
无 | get_app_logger("EmbeddingCache") |
嵌入缓存管理 |
common/session_aware_cache.py |
无 | get_app_logger("SessionCache") |
会话缓存 |
common/utils.py |
无 | get_app_logger("CommonUtils") |
通用工具 |
common/messages.py |
无 | 无需日志 | 消息定义 |
common/result.py |
无 | 无需日志 | 结果定义 |
当前是data_pipeline模块的日志系统,改造方案:
print()
语句根据内容判断日志级别logger.error()
logger.warning()
logger.debug()
logger.info()
logging.getLogger("schema_tools.*")
替换为 get_data_pipeline_logger()