当结果超过 50 条时,Vercel 日志会返回重复的条目,并且 --limit > 50
作者: danmana创建于 2026年5月11日更新于 2026年9月8日
`Vercel 日志 -- -- 自<窗口> -- -- json -- -- 限制 一旦时间窗口有50多个日志,N ' 返回重复条目。 第一页(50个记录)被正确取出;后一页再返回同一页. CLI 忠实地积累重复,直到达到 -- 限制。
前50个结果被反复重复,直到它们填充 -- 限制
最小复制量 取决于时间窗口中日志的实际数量 {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢?
窗口小到可以放入一页 # 没有重复
Vercel记录 -- -- 自7min -- -- Json -- -- 限制100
++; u [$0] ++ END {print "total:", n; print "unique:",长度(u)}'
共计:28
独 有: 28
窗口跨越了页面边界 ~ 50个独有条目两次返回
Vercel 日志 -- -- 自10min -- -- Json -- -- 限制100
++; u [$0] ++ END {print "total:", n; print "unique:",长度(u)}'
共计:100
独有: 50
事实上,只要足够大 -- 因为窗口足以复制这个
Vercel记录 -- -- 自12小时 -- -- Json -- -- 限制100
++; u [$0] ++ END {print "total:", n; print "unique:",长度(u)}'
共计:100
独有: 50
重复是同字节相同的——同样的id,同样的时间戳,同样的一切.
* 预期行为
当 ? page=N 递增时, API 应返回下一页结果, cli 则应返回不同的日志( 如果有超过 50 个日志, -- 限制 100 应返回 50至 100 个不同的日志)
### 关于根源的假设
请求-日志的终点(`/api/logs/?page=N&.')似乎忽略了N页,每次返回相同的第一页,同时仍然报告`pagination.has More: true'。
在`Fetch All RequestLogs'中驱动此程序的 CLI 环称为`fetch RequestLogs (., {. options, page })',页=0, 1, 2. 并信任`reswer.pagination. has More'。 CLI 本身的 pagination 逻辑看起来是正确的; 我怀疑服务器侧是问题所在.
https://GitHub.com/Vercel/Vercel/blob/5b4ece0b528756012c21da9086ac8197eb134cfa/packages/cli/src/util/logs-v2.ts#L243-L272
环境
- VercelCLI: 53.1.0(又 53.3.2)
- 节点:22x
- 马可斯内容来源: vercel/vercel