fix(pipeline): 死信表真正接线 + 前端 HTTP 收敛与状态修正
- bzzoiro events/standings/stats 抓取失败写入 IngestFailure 死信(尽力而为, 写入失败不影响主流程);顺带修复 standings 失败路径 league_r 缺 errors 键 的 KeyError —— 该路径此前从未跑通,一旦失败会顶掉原始异常 - admin/api.ts 收敛为 lib/http.ts 薄门面,消除第二套 HTTP 实现; UNAUTHORIZED_EVENT 定义移至共享层,断开 lib→admin 反向依赖 - STATUS_META 死键 live 改为 in_play(对齐 normalize.py 口径), 补 paused/postponed/cancelled/suspended;移除无人消费的 DashboardStats.total_matches(items.length 近似,上限 100) - 新增 tests/test_ingest_deadletter.py(6 例,变异验证判别力)
This commit is contained in:
+4
-2
@@ -325,8 +325,10 @@ class RawEvent(Base):
|
||||
class IngestFailure(Base):
|
||||
"""采集失败死信:记录失败原因、重试次数与下次重试时间。
|
||||
|
||||
⚠️ 预留未启用:当前 bzzoiro 管线不写入此表。
|
||||
未来接线计划:采集失败时写入,支持按 next_retry_at 自动重试。
|
||||
bzzoiro 三条管线(events / standings / stats)抓取失败时经由
|
||||
bzzoiro._safe_write_ingest_failure 写入本表(尽力而为,写入失败
|
||||
不影响采集主流程)。admin 可通过 /admin/schedules/ingest-failures
|
||||
查看与重试。
|
||||
"""
|
||||
__tablename__ = "ingest_failures"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user