错误与调试导读

先判断错误属于哪一层,再决定该查 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
  }
}

标准错误最值得先读的是 typecodemessage。 先看这些字段,再判断是参数、认证还是上游问题。

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 或联系支持

下一步