# 系统管理核心功能模块 本模块提供系统管理相关的核心业务逻辑,包括系统健康检查、配置管理和系统信息获取等功能。 ## 功能概述 系统管理核心模块是整个平台的基础设施之一,负责监控和管理系统的运行状态、配置和环境信息。主要提供以下功能: 1. **系统健康检查**:监控和报告系统各组件的健康状态 2. **配置管理**:获取、验证和过滤系统配置信息 3. **系统信息收集**:获取系统运行环境的详细信息 ## 主要功能 ### 1. 系统健康检查 #### 1.1 Neo4j连接检查 (check_neo4j_connection) 检查与Neo4j图数据库的连接状态,确保数据库服务正常运行。 #### 1.2 系统健康状态检查 (check_system_health) 检查系统各核心组件的健康状态,返回包含依赖服务状态的完整报告。 #### 1.3 系统信息获取 (get_system_info) 收集系统运行环境的详细信息,包括操作系统、Python版本、CPU和内存使用情况等。 ### 2. 配置管理 #### 2.1 获取系统配置 (get_system_config) 获取过滤后的系统配置信息,确保不会泄露敏感信息。 #### 2.2 验证配置有效性 (validate_config) 验证系统配置的完整性和有效性,确保必要的配置项都已正确设置。 #### 2.3 获取配置文件路径 (get_config_file_paths) 获取系统中所有配置文件的路径,用于配置管理和审计。 ## 技术实现 模块使用以下技术和库实现其功能: - 基于Python标准库实现系统信息收集 - 使用Neo4j驱动检查数据库连接 - 使用psutil库获取系统资源使用情况 - 基于日志记录提供错误和警告信息 ## 使用方法 ```python from app.core.system import check_neo4j_connection, check_system_health, get_system_info # 检查Neo4j连接 is_connected = check_neo4j_connection() print(f"Neo4j连接状态: {'正常' if is_connected else '异常'}") # 获取系统健康状态 health_status = check_system_health() print(f"系统状态: {health_status['status']}") # 获取系统信息 system_info = get_system_info() print(f"操作系统: {system_info['os']['name']} {system_info['os']['version']}") print(f"Python版本: {system_info['python']['version']}") print(f"CPU使用率: {system_info['resources']['cpu']['usage_percent']}%") ``` ## 配置依赖 模块依赖于app/config/config.py中的Config类,需要以下配置项: - NEO4J_URI: Neo4j数据库连接URI - NEO4J_USER: Neo4j用户名 - NEO4J_PASSWORD: Neo4j密码 - NEO4J_ENCRYPTED: 是否使用加密连接 - ENVIRONMENT: 运行环境(开发、测试、生产) - DEBUG: 是否启用调试模式 - PORT: 应用程序端口 - PLATFORM: 平台标识 - UPLOAD_FOLDER: 文件上传目录 - BUCKET_NAME: MinIO存储桶名称 - PREFIX: 文件前缀