feat(监控): 实时服务状态界面 - Oracle 新增 service_activity 活动表(只保留7天,写入时清理)与 /api/oracle/activity 接口(队列实时状态/当前处理视频/模型调用/rclone/人物合并/最近50条活动);VideoQueue 打点+当前处理跟踪+status();PersonService 打点;rclone_sync.sh 同步结果写活动表;fam-ui 新增'🖥 服务状态'页(状态卡+活动时间流,直连 Oracle 实时拉取)
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
"""
|
||||
state - 进程内共享单例(OracleDB 实例)
|
||||
state - 进程内共享单例(OracleDB / VideoQueue 实例)
|
||||
|
||||
video_queue / person_service / api_gateway 都通过 get_db() 访问同一个 SQLite 连接,
|
||||
避免重复打开与循环 import。
|
||||
@@ -8,6 +8,7 @@ from . import oracle_db
|
||||
from .config_loader import load_config
|
||||
|
||||
_db = None
|
||||
_queue = None
|
||||
|
||||
|
||||
def get_db() -> oracle_db.OracleDB:
|
||||
@@ -17,3 +18,13 @@ def get_db() -> oracle_db.OracleDB:
|
||||
path = cfg.get('oracle_db', {}).get('path', '/opt/fam-edge/data/oracle.db')
|
||||
_db = oracle_db.OracleDB(path)
|
||||
return _db
|
||||
|
||||
|
||||
def set_queue(q):
|
||||
"""注册 VideoQueue 实例(app 启动时调用,api_gateway 读取实时状态)。"""
|
||||
global _queue
|
||||
_queue = q
|
||||
|
||||
|
||||
def get_queue():
|
||||
return _queue
|
||||
|
||||
Reference in New Issue
Block a user