DescribeBadSqlDetection - BadSQL检测

更新时间:

查看一段时间范围内影响实例稳定的BadSQL。

调试

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

授权信息

下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:

  • 操作:是指具体的权限点。
  • 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
  • 资源类型:是指操作中支持授权的资源类型。具体说明如下:
    • 对于必选的资源类型,用前面加 * 表示。
    • 对于不支持资源级授权的操作,用全部资源表示。
  • 条件关键字:是指云产品自身定义的条件关键字。
  • 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作访问级别资源类型条件关键字关联操作
adb:DescribeBadSqlDetectionget
DBCluster
acs:adb:{#regionId}:{#accountId}:dbcluster/{#DBClusterId}

请求参数

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

集群 ID。

说明 您可以调用 DescribeDBClusters 接口查看目标地域下所有 AnalyticDB MySQL 集群的详情,包括集群 ID。
amv-xxx
RegionIdstring

地域 ID。

说明 您可以调用 DescribeRegions 接口查看地域 ID。
cn-shanghai
StartTimestring

查询开始时间。格式:yyyy-MM-ddTHH:mmZ(UTC 时间)。

2022-01-23T02:18Z
EndTimestring

查询结束时间,需晚于查询开始时间。格式:yyyy-MM-ddTHH:mmZ(UTC 时间)。

2024-11-17T02:16Z
Langstring

语言配置,取值说明:

  • zh:简体中文(默认语言)。
  • en:英文。
zh

返回参数

名称类型描述示例值
object
TotalCountstring

总记录数。

50
RequestIdstring

请求 ID。

584CFCAE-E3C8-5BBB-B46C-724E77A830A7
DBClusterIdstring

集群 ID。

amv-xxxx
DetectionItemsarray<object>

检测项及检测结果列表。

OpenApiFasDetectionItemobject

检测项及检测结果列表。

Namestring

检测项名字。

Cost
Resultsarray<object>

检测结果集合。

BadSqlDiagnosisResultobject

检测结果对象。

Costlong

查询的总耗时。单位:毫秒。

说明 该耗时指标是QueuedTimeTotalPlanningTimeExecutionTime三个耗时指标的累加值。
709
PeakMemorylong

查询的峰值内存,单位 Byte。

234
OperatorCostlong

该阶段内部总的算子耗时,等同于该阶段的 CPU Time,可用于判断查询哪些部分消耗了较多的计算资源。单位为毫秒(ms)。

2345
ScanSizelong

扫描数据量,单位:Byte。

2342
OutputDataSizelong

返回数据量,单位:Byte。

235433
ProcessIdstring

任务 ID。

202410161002191720161451770345363xxxx
TotalStagesinteger

查询生成的总 Stage 数量。

5
DiagnosisResultsarray<object>

查询自诊断结果集合。

BasicDiagnosisInfoobject

查询自诊断结果对象。

Codestring

诊断码。

查询返回客户端的数据量较大
Detailstring

诊断结果详情。

当前SQL返回到客户端的数据量较大,考虑导入到OSS
StageIdstring

StageID。

Stage[67]
OperatorIdstring

算子 ID。

TableScan[234]
SQLstring

SQL 语句详情。

说明 出于性能考虑,当前 SQL 语句最长支持显示 5120 个字符,超出限制的 SQL 语句会被截断。您可以调用 DownloadDiagnosisRecords 接口下载符合指定条件的 SQL 语句的摘要信息,包括完整的 SQL 语句。
SELECT * FROM device WHERE product_key = 'h66zXfxet2X' AND name = 'device@zntbtfptv5_9237117'
StartTimestring

查询开始时间。格式:yyyy-MM-ddTHH:mm:ssZ(UTC 时间)。

2024-09-06T02:11:00Z
PatternIdstring

SQL Pattern 的 ID。

3467484070025860498
Statusstring

检测结果状态。取值:

  • NORMAL
  • WARNING
  • CRITICAL
WARNING
Messagestring

检测结果信息。

检测到存在峰值内存教导的SQL
AccessDeniedDetailstring

访问被拒绝详细信息。

{ "PolicyType": "AccountLevelIdentityBasedPolicy", "AuthPrincipalOwnerId": "1*****************7", "EncodedDiagnosticMessage": "AQIBIAAAAOPdwKY2QLOvgMEc7SkkoJfj1kvZwsaRqNYMh10Tv0wTe0fCzaCdrvgazfNb0EnJKETgXyhR+3BIQjx9WAqZryejBsp1Bl4qI5En/D9dEhcXAtKCxCmE2kZCiEzpy8BoEUt+bs0DmlaGWO5xkEpttypLIB4rUhDvZd+zwPg4EXk4KSSWSWsurxtqDkKEMshKlQFBTKvJcKwyhk62IeYly4hQ+5IpXjkh1GQXuDRCQ==", "AuthPrincipalType": "SubUser", "AuthPrincipalDisplayName": "2***************9", "NoPermissionType": "ImplicitDeny", "AuthAction": "adb:DescribeExcessivePrimaryKeys" }

示例

正常返回示例

JSON格式

{
  "TotalCount": 50,
  "RequestId": "584CFCAE-E3C8-5BBB-B46C-724E77A830A7",
  "DBClusterId": "amv-xxxx",
  "DetectionItems": [
    {
      "Name": "Cost",
      "Results": [
        {
          "Cost": 709,
          "PeakMemory": 234,
          "OperatorCost": 2345,
          "ScanSize": 2342,
          "OutputDataSize": 235433,
          "ProcessId": "202410161002191720161451770345363xxxx",
          "TotalStages": 5,
          "DiagnosisResults": [
            {
              "Code": "查询返回客户端的数据量较大",
              "Detail": "当前SQL返回到客户端的数据量较大,考虑导入到OSS",
              "StageId": "Stage[67]",
              "OperatorId": "TableScan[234]"
            }
          ],
          "SQL": "SELECT * FROM device WHERE product_key = 'h66zXfxet2X' AND name = 'device@zntbtfptv5_9237117'",
          "StartTime": "2024-09-06T02:11:00Z",
          "PatternId": 3467484070025860600
        }
      ],
      "Status": "WARNING",
      "Message": "检测到存在峰值内存教导的SQL"
    }
  ],
  "AccessDeniedDetail": {
    "PolicyType": "AccountLevelIdentityBasedPolicy",
    "AuthPrincipalOwnerId": "1*****************7",
    "EncodedDiagnosticMessage": "AQIBIAAAAOPdwKY2QLOvgMEc7SkkoJfj1kvZwsaRqNYMh10Tv0wTe0fCzaCdrvgazfNb0EnJKETgXyhR+3BIQjx9WAqZryejBsp1Bl4qI5En/D9dEhcXAtKCxCmE2kZCiEzpy8BoEUt+bs0DmlaGWO5xkEpttypLIB4rUhDvZd+zwPg4EXk4KSSWSWsurxtqDkKEMshKlQFBTKvJcKwyhk62IeYly4hQ+5IpXjkh1GQXuDRCQ==",
    "AuthPrincipalType": "SubUser",
    "AuthPrincipalDisplayName": "2***************9",
    "NoPermissionType": "ImplicitDeny",
    "AuthAction": "adb:DescribeExcessivePrimaryKeys"
  }
}

错误码

HTTP status code错误码错误信息描述
404InvalidDBCluster.NotFoundThe DBClusterId provided does not exist in our records.您指定的 DBClusterId 不存在,请确认 DBClusterId 值是否正确。

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