错误与调试导读
先判断错误属于哪一层,再决定该查 key、余额、参数还是 provider。
排查时最容易浪费时间的,不是系统太复杂,而是你在 错的层上反复查。TheRouter 的请求失败大致可以分成四类:请求参数、认证与额度、限流、上游 provider。
先看 x-request-id
每次响应都会带
x-request-id。只要你要找客服、查 request logs 或对齐内部监控, 先记住这个 ID,比先截图更有效。最小判断表
400 / 404
优先检查:
请求参数
模型 ID
路径是否写错
通常不是:
credits 或 provider 故障标准错误结构长什么样
json
{
"error": {
"message": "Rate limit exceeded",
"type": "rate_limit_error",
"code": 429,
"param": null
}
}标准错误最值得先读的是 type、code 和 message。 先看这些字段,再判断是参数、认证还是上游问题。
402 到底意味着什么
json
{
"error": {
"type": "insufficient_credits",
"message": "Insufficient credit balance",
"code": "insufficient_credits",
"balance": {
"current": 2.5,
"threshold": 5,
"currency": "credits"
}
}
}最容易被误判的错误
402 不是 provider 抽风,而是你自己的 credits 不足,或预估费用超过当前余额和阈值。
最短排障顺序
text
1. 记下 x-request-id
2. 看 HTTP code 和 error.type
3. 确认 key / 路径 / 模型 ID
4. 看 request logs 里这次请求实际走了什么
5. 再决定要不要重试、切 fallback 或联系支持