5月30日 20:38
Vercel 日志和错误排查应该怎么看?
Vercel 的错误排查可以按三类看:构建错误看 Build Logs,接口和 Serverless Function 问题看 Runtime Logs,线上体验和性能问题看 Analytics、Speed Insights 或第三方监控。高效做法不是等报错后翻日志,而是在部署、运行时、告警和错误追踪之间建立完整链路。
追问
Build Logs 和 Function Logs 有什么区别?
Build Logs 记录部署生成过程,适合查依赖、构建命令、类型错误和环境变量缺失。Function Logs 记录线上函数执行,适合查接口报错、超时和数据库连接。
为什么本地正常,Vercel 上失败?
最常见是 Node.js 版本不同、环境变量没配、大小写路径在本地不敏感但线上敏感。也可能是 Vercel 运行环境访问不到内网数据库。
日志里应该打印哪些信息?
打印请求 ID、接口名、耗时、状态、关键业务 ID 和错误 message。不要打印完整请求体、密钥、cookie、手机号等敏感数据。
函数超时怎么排查?
先看外部 API 慢、数据库查询慢,还是代码做了重计算。Vercel Functions 不适合长任务,必要时拆到队列或 worker。
写段代码
jstry { return Response.json(await loadData()); } catch (err) { console.error('loadData failed', { message: err.message }); return Response.json({ error: 'Internal error' }, { status: 500 }); }