yueli 4ed8abcc6d fix(scheduler): 调度日志补行缓冲,让后台任务的执行结果可见
问题:gunicorn 的 stdout 是管道,Python 默认对它做**块缓冲** ——
print() 的内容会攒在缓冲区里,docker logs 里看不到。

实测 2026-09-23 17:30 的日报任务:8 个 worker 里只刷出 2 条
"本轮跳过",连抢到锁那个 worker 的成败都没出现,完全无从判断
那封日报到底发了没有。事后排查时只能靠猜。

这不是偶发 —— 定时任务跑在后台线程,出问题本来就不容易发现,
再叠加输出缓冲就等于"瞎跑"。补齐后同一条路径 8 条日志全部刷出,
7 个 worker 跳过、1 个执行,一目了然。

改动:
  · run.py 顶部 sys.stdout.reconfigure(line_buffering=True),全局生效;
  · 调度任务的 print 一律再加 flush=True 作为双保险 —— 这几行输出是
    出问题时唯一的线索,不能依赖缓冲策略。
2026-09-23 17:41:27 +08:00
2026-09-23 17:32:00 +08:00
2026-04-28 16:07:11 +08:00
2026-04-28 16:07:11 +08:00
2026-04-28 16:07:11 +08:00
Description
No description provided
89 MiB
Languages
Python 70.2%
CSS 14.9%
Vue 7.6%
HTML 4.2%
TypeScript 3.1%