diff --git a/docs/maintenance/行情历史补档.md b/docs/maintenance/行情历史补档.md index 5425c56..c92d4c4 100644 --- a/docs/maintenance/行情历史补档.md +++ b/docs/maintenance/行情历史补档.md @@ -16,15 +16,15 @@ ## 上线步骤(总工执行) -在应用根目录: +在目标环境容器内执行(应用根目录;宿主机也可直接跑,脚本已自带仓库根 `sys.path` 引导): ```bash # 1) 只读规划:区分已有、真正缺档;不会写入 -python tools/backfill_recent_snapshots.py --account <管理员账号> --lookback 60 --dry-run --json +docker compose exec xiaobai-review python tools/backfill_recent_snapshots.py --account <管理员账号> --lookback 60 --dry-run --json # 2) 正式补档:先走 SQLite backup API 写 data/backups/review-pre-recent-backfill-*.db # 再对缺失交易日调用现有 sync_dashboard -python tools/backfill_recent_snapshots.py --account <管理员账号> --lookback 60 --json +docker compose exec xiaobai-review python tools/backfill_recent_snapshots.py --account <管理员账号> --lookback 60 --json # 3) 验证 # GET /api/sentiment/history?trade_date=YYYY-MM-DD&limit=60 diff --git a/tools/backfill_recent_snapshots.py b/tools/backfill_recent_snapshots.py index df1e48e..a9627ca 100644 --- a/tools/backfill_recent_snapshots.py +++ b/tools/backfill_recent_snapshots.py @@ -12,7 +12,13 @@ from __future__ import annotations import argparse import json +import sys from datetime import date +from pathlib import Path + +ROOT = Path(__file__).resolve().parents[1] +if str(ROOT) not in sys.path: + sys.path.insert(0, str(ROOT)) from backend.application import SERVICE from backend.bootstrap.config import normalize_date