文档

GetRequestDiagnosisResult - 查询SQL诊断的结果

更新时间:

调用GetRequestDiagnosisResult接口,查询SQL诊断的结果。

接口说明

使用该接口需满足以下前提条件:

  • 在使用 SDK 调用 DAS 服务时,需要将地域指定为 cn-shanghai。

  • 该接口不支持查询自动 SQL 优化的诊断结果

  • 本接口适用的数据库引擎为:

    • RDS MySQL
    • RDS PostgreSQL
    • RDS SQL Server
    • PolarDB MySQL 版
    • PolarDB PostgreSQL 版(兼容 Oracle)
    • 云数据库 MongoDB 版
说明 RDS PostgreSQL 实例内核小版本为 20220130 及以上。查看和升级内核小版本,请参见升级内核小版本

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

授权信息

当前API暂无授权信息透出。

请求参数

名称类型必填描述示例值
InstanceIdstring

实例 ID。

rm-0iwhhl8gx0ld6****
NodeIdstring

节点 ID。

说明 对于 PolarDB MySQL 版、PolarDB PostgreSQL 版(兼容 Oracle)和云数据库 MongoDB 等集群实例,需要提供节点 ID。
202****
MessageIdstring

诊断 ID, CreateRequestDiagnosis 接口返回的诊断唯一标识。

说明 当 MessageId 为自动 SQL 优化的诊断 ID 时,该接口无法返回诊断结果
61820b594664275c4429****
SqlIdstring

SQL 模板 ID。

说明 此参数是 DAS 控制台调用 API 时使用,用户使用此 API 时无需传入。
None
Sourcestring

任务来源。

说明 此参数是 DAS 控制台调用 API 时使用,用户使用此 API 时无需传入。
None

返回参数

名称类型描述示例值
object
Messagestring

请求返回消息。

说明 请求成功时该参数返回 Successful,请求失败时会返回请求异常信息(如错误码等)。
Successful
RequestIdstring

请求 ID。

800FBAF5-A539-5B97-A09E-C63AB2F7****
Dataobject

返回数据

messageIdstring

诊断 ID,唯一标识。

61820b594664275c4429****
uuidstring

诊断实例唯一标识。

hdm_51fe9bc19ec413f4d530431af87a****
accountIdstring

用户 ID。

2093****
sqlIdstring

SQL 模板 ID。

0c95dae3afef77be06572612df9b****
enginestring

数据库引擎,取值:

  • MySQL
  • PostgreSQL
  • SQLServer
  • PolarDBMySQL
  • PolarDBOracle
  • MongoDB
MySQL
dbSchemastring

数据库名。

das
paramstring

额外信息。

{"":""}
stateinteger

诊断状态:

  • 0:诊断中。
  • 1:诊断错误。
  • 2:诊断完成。
  • 3:SQL 错误。
  • 4:引擎错误。
2
resultstring

SQL 诊断结果。

  • endTime:SQL 诊断的结束时间。
  • errorCode:错误码。
    • 0001:诊断成功。
    • 0003:诊断失败。
  • errorMessage:错误信息。
  • estimateCost:预估得消耗。
    • cpu:索引的 CPU 消耗预估值。
    • io:索引的 IO 消耗预估值。
    • rows:索引的返回列预估值。
  • improvement:性能提升比。
  • indexAdvices:索引建议。
    • columns:索引列。
    • ddlAddIndex:索引 DDL 语句。
    • indexName:索引名。
    • schemaName:数据库名。
    • tableName:表名。
    • unique:是否唯一索引。
  • ip:实例的 IP 地址。
  • messageId:诊断 ID。
  • port:实例的端口。
  • sqlTag:SQL 标签。
  • startTime:SQL 诊断的开始时间。
  • success:请求是否执行成功。
  • support:SQL 语句是否支持诊断。
    • true:支持。
    • false:不支持。
  • tuningAdvices:SQL 改写建议。
{ "endTime":1636354256000, "errorCode":"0001", "errorMessage":"TFX成功", "estimateCost":{ "cpu":1.7878745150389268, "io":9.948402604746128, "rows":8.889372575194633 }, "improvement":12933.97, "indexAdvices":[ { "columns":[ "work_no" ], "ddlAddIndex":"ALTER TABLE `test`.`work_order` ADD INDEX `idx_workno` (`work_no`)", "indexName":"idx_workno", "schemaName":"test", "tableName":"work_order", "unique":false } ], "ip":"****.mysql.rds.aliyuncs.com", "messageId":"6188c8cb2f1365b16aee****", "port":3306, "sqlTag":"{\"PRED_EQUAL\":\"Y\",\"CNT_QB\":\"1\",\"CNT_TB\":\"1\"}", "startTime":1636354252000, "success":true, "support":true, "tuningAdvices":[ ] }
gmtCreatestring

SQL 诊断创建时间,格式为 Unix 时间戳,单位为毫秒。

1633071840000
gmtModifiedstring

SQL 诊断修改时间,格式为 Unix 时间戳,单位为毫秒。

1633071850000
Codestring

返回的状态码。

200
Successstring

请求是否执行成功:

  • true:执行成功。

  • false:执行失败。

true

示例

正常返回示例

JSON格式

{
  "Message": "Successful",
  "RequestId": "800FBAF5-A539-5B97-A09E-C63AB2F7****",
  "Data": {
    "messageId": "61820b594664275c4429****",
    "uuid": "hdm_51fe9bc19ec413f4d530431af87a****",
    "accountId": "2093****",
    "sqlId": "0c95dae3afef77be06572612df9b****",
    "engine": "MySQL",
    "dbSchema": "das",
    "param": "{\"\":\"\"}",
    "state": 2,
    "result": "{ \"endTime\":1636354256000, \"errorCode\":\"0001\", \"errorMessage\":\"TFX成功\", \"estimateCost\":{ \"cpu\":1.7878745150389268, \"io\":9.948402604746128, \"rows\":8.889372575194633 }, \"improvement\":12933.97, \"indexAdvices\":[ { \"columns\":[ \"work_no\" ], \"ddlAddIndex\":\"ALTER TABLE `test`.`work_order` ADD INDEX `idx_workno` (`work_no`)\", \"indexName\":\"idx_workno\", \"schemaName\":\"test\", \"tableName\":\"work_order\", \"unique\":false } ], \"ip\":\"****.mysql.rds.aliyuncs.com\", \"messageId\":\"6188c8cb2f1365b16aee****\", \"port\":3306, \"sqlTag\":\"{\\\"PRED_EQUAL\\\":\\\"Y\\\",\\\"CNT_QB\\\":\\\"1\\\",\\\"CNT_TB\\\":\\\"1\\\"}\", \"startTime\":1636354252000, \"success\":true, \"support\":true, \"tuningAdvices\":[ ] }",
    "gmtCreate": "1633071840000",
    "gmtModified": "1633071850000"
  },
  "Code": "200",
  "Success": "true"
}

错误码

HTTP status code错误码错误信息描述
400InvalidParamsThe request parameters are invalid.请求参数错误
403NoPermissionYou are not authorized to do this action.没有权限执行该操作

访问错误中心查看更多错误码。

变更历史

变更时间变更内容概要操作
暂无变更历史