文档

OpenAPI报错诊断

更新时间:

调用OpenAPI遇到报错时,您可复制报错信息到OpenAPI问题诊断页面自助获取解决方案。

获取报错信息

API在线调试页面

image

SDK 调用

image

CLI 调用

image

Terraform 调用

image

Alibaba Cloud Developer Toolkit

image

诊断OpenAPI问题

重要

当前诊断页面仅支持RAM用户自查或阿里云账号(主账号)查询自身及其RAM用户的请求和报错信息,不支持RAM用户间互查,也不支持阿里云账号(主账号)间互查。

获取到报错信息之后,您可以直接复制完整的JSON内容或仅复制报错信息中的RequestId参数或者Code、Message到OpenAPI问题诊断页面自助获取解决方案。

以调用云服务器 ECS的RunInstances接口报错为例,报错信息如下所示:

{
  "RequestId": "6BE56E05-XXXX-XXXX-XXXX-FD90C4FFD581",
  "HostId": "ecs.ap-southeast-3.aliyuncs.com",
  "Code": "InvalidImageId.NotFound",
  "Message": "The specified ImageId does not exist.",
  "Recommend": "https://api.alibabacloud.com/troubleshoot?intl_lang=EN_US&q=InvalidImageId.NotFound&product=Ecs&requestId=6BE56E05-XXXX-XXXX-XXXX-FD90C4FFD581"
}

各参数解释如下:

  • RequestId:请求唯一标识,可复制RequestId到OpenAPI问题诊断自助获取解决方案。

  • HostId:服务端主机标识。

  • Code:错误码信息。

  • Message:详细错误信息,可通过此内容排查入参问题,例子中即报错ImageId传递了错误的镜像ID,通过此信息调整ImageId为正确的镜像ID即可解决此报错。

  • Recommend:错误诊断链接,可直接复制该字段跳转到错误诊断页面获取解决方案。

image

当在实际业务场景中,如使用SDK时,可能无法直接获取完整报错信息的JSON,此时也可直接复制RequestId或者Code、Message到OpenAPI问题诊断获取解决方案,推荐使用RequestId,获取方案相对精准。

使用RequestId获取的解决方案如下图所示:

image

查看诊断方案

如上图所示,页面下方有诊断方案和日志信息两个页签,其中诊断方案页签将展示所匹配的解决方案信息,例如查询的报错信息是The specified ImageId does not exist.,对应给出的方案如下:

指定的镜像在该用户账号下不存在,请您检查镜像 ID 是否正确。

根据方案中的内容,检查入参ImageId的值是否填入的正确。

检查入参

在实际业务场景中,可能未保存报错时请求体内容,也可通过OpenAPI问题诊断获取请求入参、请求响应和其它信息。

以报错RequestId:6BE56E05-XXXX-XXXX-XXXX-FD90C4FFD581为例,单击日志信息,从下图可看到此次请求的调用链可视化分析、完整报错信息和请求内容等,可通过这些日志更具体地定位问题和解决问题。

image