调用OpenAPI遇到报错时,您可复制报错信息到OpenAPI问题诊断页面自助获取解决方案。
获取报错信息
API在线调试页面
SDK 调用
CLI 调用
Terraform 调用
Alibaba Cloud Developer Toolkit
诊断OpenAPI问题
当前诊断页面仅支持RAM用户自查或阿里云账号(主账号)查询自身及其RAM用户的请求和报错信息,不支持RAM用户间互查,也不支持阿里云账号(主账号)间互查。
获取到报错信息之后,您可以直接复制完整的JSON内容或仅复制报错信息中的RequestId参数或者Code、Message到页面自助获取解决方案。
以调用云服务器 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到自助获取解决方案。
HostId:服务端主机标识。
Code:错误码信息。
Message:详细错误信息,可通过此内容排查入参问题,例子中即报错ImageId传递了错误的镜像ID,通过此信息调整ImageId为正确的镜像ID即可解决此报错。
Recommend:错误诊断链接,可直接复制该字段跳转到错误诊断页面获取解决方案。
当在实际业务场景中,如使用SDK时,可能无法直接获取完整报错信息的JSON,此时也可直接复制RequestId或者Code、Message到获取解决方案,推荐使用RequestId,获取方案相对精准。
使用RequestId获取的解决方案如下图所示:
查看诊断方案
如上图所示,页面下方有诊断方案和日志信息两个页签,其中诊断方案页签将展示所匹配的解决方案信息,例如查询的报错信息是The specified ImageId does not exist.
,对应给出的方案如下:
指定的镜像在该用户账号下不存在,请您检查镜像 ID 是否正确。
根据方案中的内容,检查入参ImageId的值是否填入的正确。
检查入参
在实际业务场景中,可能未保存报错时请求体内容,也可通过OpenAPI问题诊断获取请求入参、请求响应和其它信息。
以报错RequestId:6BE56E05-XXXX-XXXX-XXXX-FD90C4FFD581为例,单击日志信息,从下图可看到此次请求的调用链可视化分析、完整报错信息和请求内容等,可通过这些日志更具体地定位问题和解决问题。