__init__.py 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. from .log_manager import LogManager
  2. import logging
  3. # 全局日志管理器实例
  4. _log_manager = LogManager()
  5. def initialize_logging(config_path: str = "config/logging_config.yaml"):
  6. """初始化项目日志系统"""
  7. _log_manager.initialize(config_path)
  8. def get_logger(name: str, module: str = "default") -> logging.Logger:
  9. """获取logger实例 - 主要API"""
  10. return _log_manager.get_logger(name, module)
  11. # 便捷方法
  12. def get_data_pipeline_logger(name: str) -> logging.Logger:
  13. """获取data_pipeline模块logger"""
  14. return get_logger(name, "data_pipeline")
  15. def get_agent_logger(name: str) -> logging.Logger:
  16. """获取agent模块logger"""
  17. return get_logger(name, "agent")
  18. def get_vanna_logger(name: str) -> logging.Logger:
  19. """获取vanna模块logger"""
  20. return get_logger(name, "vanna")
  21. def get_app_logger(name: str) -> logging.Logger:
  22. """获取app模块logger"""
  23. return get_logger(name, "app")
  24. def get_react_agent_logger(name: str) -> logging.Logger:
  25. """获取react_agent模块logger"""
  26. return get_logger(name, "react_agent")
  27. # 上下文管理便捷方法
  28. def set_log_context(**kwargs):
  29. """设置日志上下文(可选)
  30. 示例: set_log_context(user_id='user123', session_id='sess456')
  31. """
  32. _log_manager.set_context(**kwargs)
  33. def clear_log_context():
  34. """清除日志上下文"""
  35. _log_manager.clear_context()