加入告警去重與洞察向量回補
All checks were successful
CD Pipeline / deploy (push) Successful in 1m19s

This commit is contained in:
OoO
2026-04-29 23:10:27 +08:00
parent 0c2e9bbced
commit 78eebfbcfc
6 changed files with 155 additions and 0 deletions

View File

@@ -1644,6 +1644,7 @@ def run_whitepage_check():
event_type="whitepage_check_failure",
priority="P1",
title="白頁檢查任務異常",
dedup_ttl_sec=1800,
)
except Exception as _router_e:
logging.error(f"[Whitepage] [Check] event_router 失敗: {_router_e}")
@@ -2247,6 +2248,7 @@ def run_db_backup_task():
priority="P1",
title="資料庫備份失敗",
payload={"filename": result.get("filename")},
dedup_ttl_sec=3600,
)
except Exception as _router_e:
logging.error(f"[Scheduler] [Backup] event_router 失敗: {_router_e}")
@@ -2277,6 +2279,7 @@ def run_db_backup_task():
event_type="db_backup_failure",
priority="P1",
title="資料庫備份排程異常",
dedup_ttl_sec=3600,
)
except Exception as _router_e:
logging.error(f"[Scheduler] [Backup] event_router 失敗: {_router_e}")
@@ -2345,6 +2348,7 @@ def run_backup_monitor_task():
priority="P2",
title="資料庫備份健康告警",
payload={"latest_file": info.get("filename"), "created_at": str(info.get("created_at"))},
dedup_ttl_sec=21600,
)
except Exception as _router_e:
logging.error(f"[Scheduler] [BackupMonitor] event_router 失敗: {_router_e}")
@@ -2382,6 +2386,7 @@ def run_backup_monitor_task():
event_type="backup_monitor_failure",
priority="P2",
title="資料庫備份監控任務異常",
dedup_ttl_sec=3600,
)
except Exception as _router_e:
logging.error(f"[Scheduler] [BackupMonitor] event_router 失敗: {_router_e}")
@@ -2456,6 +2461,11 @@ def run_quality_rescore_task():
try:
from services.openclaw_learning_service import run_quality_rescore_batch
result = run_quality_rescore_batch()
try:
from services.openclaw_learning_service import enqueue_missing_insight_embeddings
result["embedding_backfill"] = enqueue_missing_insight_embeddings(limit=200)
except Exception as _embed_e:
logging.warning(f"[Scheduler] [Rescore] embedding backfill 略過: {_embed_e}")
logging.info(
f"[Scheduler] [Rescore] 品質重算完成 | 更新={result.get('updated', 0)}"
f" | relearn 自動歸檔={result.get('relearn_reset', 0)}"