修复首页健康摘要兼容旧版数据库连接管理器

This commit is contained in:
liuwei
2026-05-06 09:01:59 +08:00
parent 905380a77a
commit 825aa612ed
2 changed files with 36 additions and 3 deletions

View File

@@ -80,7 +80,12 @@ def _extract_mysql_runtime_snapshot(db_manager) -> dict:
snapshot = {
"status": "healthy",
"summary": "连接正常",
"database": db_manager.get_mysql_database_name(),
# 这里不要假定 db_manager 一定实现了扩展 helper。
# 当前仓库存在多种 DBConnectionManager 版本,因此先走 getattr再在 SQL 查询里补足真实值。
"database": (
str(getattr(db_manager, "get_mysql_database_name", lambda: "")() or "").strip()
if db_manager is not None else ""
),
"version": "",
"threads_connected": 0,
"threads_running": 0,
@@ -90,7 +95,10 @@ def _extract_mysql_runtime_snapshot(db_manager) -> dict:
"uptime_seconds": 0,
"table_count": 0,
"schema_size_mb": 0.0,
"slow_query_threshold_ms": db_manager.get_slow_query_threshold_ms(),
"slow_query_threshold_ms": (
int(getattr(db_manager, "get_slow_query_threshold_ms", lambda default=300: default)(300))
if db_manager is not None else 300
),
}
mysql_conn = db_manager.get_mysql_connection()