查询SQL列表
功能介绍
该接口用于查询实时SQL列表。
调用方法
请参见如何调用API。
URI
POST /v2/{project_id}/clusters/{cluster_id}/dms/queries
请求参数
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| cluster_id | 是 | String | 参数解释: 集群ID。获取方法请参见获取集群ID。 约束限制: 必须是有效的dws集群ID。 取值范围: 36位UUID。 默认取值: 不涉及。 |
| project_id | 是 | String | 参数解释: 项目ID。获取方法请参见获取项目ID。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
| offset | 是 | String | 参数解释: 偏移量,表示从此偏移量开始查询,一般为页数减1。 取值范围: 大于等于0。 |
| limit | 是 | String | 参数解释: 每页显示的条目数量。 取值范围: 大于0。 |
| conditions | 是 | Array of ListQueriesCondition objects | 参数解释: 查询条件数组。 取值范围: 不涉及。 |
| order_by | 否 | String | 参数解释: 排序字段。 取值范围: 不涉及。 |
| target | 是 | String | 参数解释: 固定值db_queries。 取值范围: 不涉及。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| field | 是 | String | 参数解释: 字段名称。 取值范围: systemQuery:是否隐藏系统查询。 userName:用户名称。 applicationName:应用名称。 dbName:数据库名称。 resourcePool:资源池。 queryStatus:查询状态。 enqueue:排队状态。 |
| value | 是 | String | 参数解释: 字段值。 取值范围: 不涉及。 |
| operator | 是 | String | 参数解释: 比较方式。 取值范围: String类型参数:=、!=、like、not like int类型参数:=、!=、>、<、>=、<= boolean类型参数:=、!= |
响应参数
状态码:200
| 参数 | 参数类型 | 描述 |
|---|---|---|
| code | Integer | 参数解释: 响应码。 取值范围: 不涉及。 |
| msg | String | 参数解释: 响应信息。 取值范围: 不涉及。 |
| data | ListQueriesData object | 参数解释: 响应数据。 取值范围: 不涉及。 |
| count | Integer | 参数解释: 总条数。 取值范围: 不涉及。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| queries | Array of ListQueriesDto objects | 参数解释: 查询数据列表。 取值范围: 不涉及。 |
| status | ListQueriesStatus object | 参数解释: 统计数据。 取值范围: 不涉及。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| virtual_cluster_id | Integer | 参数解释: 虚拟集群ID。 取值范围: 不涉及。 |
| ctime | Long | 参数解释: 采集时间。 取值范围: 不涉及。 |
| pid | String | 参数解释: 会话ID。 取值范围: 不涉及。 |
| inst_name | String | 参数解释: 实例名称。 取值范围: 不涉及。 |
| waiting | Boolean | 参数解释: 如果后台当前正等待锁则为true。 取值范围: 不涉及。 |
| enqueue | String | 参数解释: 资源状态。 取值范围: 不涉及。 |
| warning | String | 参数解释: 主要显示如下几类告警信息以及sql自诊断调优相关告警。 取值范围: 不涉及。 |
| query | String | 参数解释: 查询语句。 取值范围: 不涉及。 |
| lane | String | 参数解释: 快慢车道。 取值范围: fast:快车道。 slow:慢车道。 |
| db_name | String | 参数解释: 数据库名称。 取值范围: 不涉及。 |
| priority | String | 参数解释: 任务在资源池中的优先级。 取值范围: 1:最高。 2:高。 4:中。 8:低。 |
| query_id | String | 参数解释: 语句执行使用的内部查询ID。 取值范围: 不涉及。 |
| query_band | String | 参数解释: 用于标示作业类型,可通过guc参数query_band进行设置,默认为空字符串。 取值范围: 不涉及。 |
| job_name | String | 参数解释: 该值是从query_band的字段中取出来的,位置0。 取值范围: 不涉及。 |
| job_inst | String | 参数解释: 该值是从query_band的字段中取出来的,位置1。 取值范围: 不涉及。 |
| user_name | String | 参数解释: 连接到后端的用户名。 取值范围: 不涉及。 |
| application_name | String | 参数解释: 连接到后端的应用名。 取值范围: 不涉及。 |
| client_address | String | 参数解释: 连接到后端的客户端的IP地址。 取值范围: 不涉及。 |
| client_hostname | String | 参数解释: 客户端的主机名。 取值范围: 不涉及。 |
| client_port | String | 参数解释: 客户端用于与后端通讯的tcp端口号。 取值范围: 不涉及。 |
| start_time | Long | 参数解释: 语句执行的开始时间。 取值范围: 不涉及。 |
| block_time | Long | 参数解释: 语句执行前的阻塞时间,单位ms。 取值范围: 不涉及。 |
| duration | Long | 参数解释: 语句已经执行的时间,单位ms。 取值范围: 不涉及。 |
| estimate_total_time | Long | 参数解释: 语句执行预估总时间,单位ms。 取值范围: 不涉及。 |
| estimate_left_time | Long | 参数解释: 语句执行预估剩余时间,单位ms。 取值范围: 不涉及。 |
| resource_pool | String | 参数解释: 用户使用的资源池。 取值范围: 不涉及。 |
| control_group | String | 参数解释: 语句所使用的cgroup。 取值范围: 不涉及。 |
| min_peak_memory | Integer | 参数解释: 语句在所有dn上的最小内存峰值,单位mb。 取值范围: 不涉及。 |
| max_peak_memory | Integer | 参数解释: 语句在所有dn上的最大内存峰值,单位mb。 取值范围: 不涉及。 |
| average_peak_memory | Integer | 参数解释: 语句执行过程中的内存使用平均值,单位mb。 取值范围: 不涉及。 |
| memory_skew_percent | Integer | 参数解释: 语句在各dn间的内存使用倾斜率。 取值范围: 不涉及。 |
| estimate_memory | Integer | 参数解释: 语句预估使用内存,单位mb。 取值范围: 不涉及。 |
| spill_info | String | 参数解释: 语句在所有dn上的下盘信息。 取值范围: 不涉及。 |
| min_spill_size | Integer | 参数解释: 若发生下盘,所有dn上下盘的最小数据量 (单位mb) 默认为0。 取值范围: 不涉及。 |
| max_spill_size | Integer | 参数解释: 若发生下盘,所有dn上下盘的最大数据量 (单位mb) 默认为0。 取值范围: 不涉及。 |
| average_spill_size | Integer | 参数解释: 若发生下盘,所有dn上下盘的平均数据量 (单位mb) 默认为0。 取值范围: 不涉及。 |
| spill_skew_percent | Integer | 参数解释: 若发生下盘,dn间下盘倾斜率。 取值范围: 不涉及。 |
| min_dn_time | Long | 参数解释: 语句在所有dn上的最小执行时间,单位ms。 取值范围: 不涉及。 |
| max_dn_time | Long | 参数解释: 语句在所有dn上的最大执行时间,单位ms。 取值范围: 不涉及。 |
| average_dn_time | Long | 参数解释: 语句在所有dn上的平均执行时间,单位ms。 取值范围: 不涉及。 |
| dntime_skew_percent | Integer | 参数解释: 语句在各dn间的执行时间倾斜率。 取值范围: 不涉及。 |
| min_cpu_time | Long | 参数解释: 语句在所有dn上的最小cpu时间,单位ms。 取值范围: 不涉及。 |
| max_cpu_time | Long | 参数解释: 语句在所有dn上的最大cpu时间,单位ms。 取值范围: 不涉及。 |
| total_cpu_time | Long | 参数解释: 语句在所有dn上的cpu总时间,单位ms。 取值范围: 不涉及。 |
| cpu_skew_percent | Integer | 参数解释: 语句在各dn间的cpu时间倾斜率。 取值范围: 不涉及。 |
| average_peak_iops | Integer | 参数解释: 语句在所有dn上的每秒平均io峰值(列存单位是次/s,行存单位是万次/s)。 取值范围: 不涉及。 |
| iops_skew_percent | Integer | 参数解释: 语句在dn间的io倾斜率。 取值范围: 不涉及。 |
| max_peak_iops | Integer | 参数解释: 语句在所有dn上的每秒最大io峰值(列存单位是次/s,行存单位是万次/s)。 取值范围: 不涉及。 |
| min_peak_iops | Integer | 参数解释: 语句在所有dn上的每秒最小io峰值(列存单位是次/s,行存单位是万次/s)。 取值范围: 不涉及。 |
| query_plan | String | 参数解释: 查询计划。 取值范围: 不涉及。 |
| query_status | String | 参数解释: 当前查询语句的实时运行状态。 取值范围: active、idle、idle in transaction、idle in transaction(aborted)、fastpath function call、disabled。 |
| wlm_status | String | 参数解释: 当前查询语句在资源池上的运行状态。 取值范围: pending:待生效。 running:运行中。 finished:结束。 aborted:终止。 active:正常。 unknown:未知。 |
| wlm_attrib | String | 参数解释: 语句的属性。 取值范围: ordinary:普通。 simple:简单。 complicated:复杂。 internal:内部。 |
| system_query | Boolean | 参数解释: 是否系统查询。 取值范围: 不涉及。 |
| backend_start | Long | 参数解释: 该过程开始的时间,即当客户端连接服务器时。 取值范围: 不涉及。 |
| elapsed_time | Long | 参数解释: 到目前为止的执行时间。 取值范围: 不涉及。 |
| curr_xact_start | Long | 参数解释: 启动当前事务的时间,如果没有事务是活跃的,则为null。如果当前查询是首个事务,则这列等同于query_start列。 取值范围: 不涉及。 |
| state_change | Long | 参数解释: 上次状态改变的时间。 取值范围: 不涉及。 |
| query_start | Long | 参数解释: 语句执行的开始时间。 取值范围: 不涉及。 |
| query_elapsed_time | Long | 参数解释: 语句当前为止的实际执行时间。单位:秒。 取值范围: 不涉及。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| average_query_waiting_time | Double | 参数解释: 平均查询等待时间。 取值范围: 不涉及。 |
| average_time_consumption_of_queries | Double | 参数解释: 平均查询耗时。 取值范围: 不涉及。 |
| average_time_consumption_of_sessions | Double | 参数解释: 平均会话耗时。 取值范围: 不涉及。 |
| queries_count | Long | 参数解释: 查询数量。 取值范围: 不涉及。 |
| session_count | Long | 参数解释: 会话数量。 取值范围: 不涉及。 |
请求示例
https://{Endpoint}/v2/{project_id}/clusters/{cluster_id}/dms/queries
{
"offset" : 0,
"limit" : 1,
"cluster_id" : "cluster_id",
"project_id" : "project_id",
"conditions" : [ {
"field" : "userName",
"value" : "用户名称",
"operator" : "="
}, {
"field" : "applicationName",
"value" : "应用名称",
"operator" : "<>"
}, {
"field" : "dbName",
"value" : "数据库名称",
"operator" : "="
}, {
"field" : "resourcePool",
"value" : "资源池",
"operator" : "<>"
}, {
"field" : "queryStatus",
"value" : "查询状态",
"operator" : "="
}, {
"field" : "enqueue",
"value" : "排队状态",
"operator" : "<>"
}, {
"field" : "lane",
"value" : "快慢车道",
"operator" : "="
}, {
"field" : "instName",
"value" : "接入CN",
"operator" : "<>"
}, {
"field" : "pid",
"value" : "会话ID",
"operator" : "="
}, {
"field" : "blockTime",
"value" : "1",
"operator" : "="
}, {
"field" : "duration",
"value" : "2",
"operator" : "<>"
}, {
"field" : "minCpuTime",
"value" : "3",
"operator" : ">"
}, {
"field" : "maxCpuTime",
"value" : "4",
"operator" : "<"
}, {
"field" : "totalCpuTime",
"value" : "5",
"operator" : ">="
}, {
"field" : "cpuSkewPercent",
"value" : "6",
"operator" : "<="
}, {
"field" : "spillInfo",
"value" : "dn下盘信息",
"operator" : "="
}, {
"field" : "minSpillSize",
"value" : "7",
"operator" : "<>"
}, {
"field" : "maxSpillSize",
"value" : "8",
"operator" : ">"
}, {
"field" : "averageSpillSize",
"value" : "9",
"operator" : "<"
}, {
"field" : "spillSkewPercent",
"value" : "10",
"operator" : ">="
}, {
"field" : "queryBand",
"value" : "作业类型",
"operator" : "<>"
}, {
"field" : "jobName",
"value" : "任务名称",
"operator" : "="
}, {
"field" : "jobInst",
"value" : "任务实例",
"operator" : "<>"
}, {
"field" : "clientHostname",
"value" : "主机名称",
"operator" : "="
}, {
"field" : "clientPort",
"value" : "TCP端口",
"operator" : "<>"
}, {
"field" : "waiting",
"value" : "是否等待",
"operator" : "="
}, {
"field" : "estimateTotalTime",
"value" : "11",
"operator" : "="
}, {
"field" : "estimateLeftTime",
"value" : "12",
"operator" : "<>"
}, {
"field" : "controlGroup",
"value" : "cgroup",
"operator" : "like"
}, {
"field" : "minPeakMemory",
"value" : "13",
"operator" : "="
}, {
"field" : "maxPeakMemory",
"value" : "14",
"operator" : "<>"
}, {
"field" : "averagePeakMemory",
"value" : "15",
"operator" : ">"
}, {
"field" : "memorySkewPercent",
"value" : "16",
"operator" : "<"
}, {
"field" : "estimateMemory",
"value" : "17",
"operator" : ">="
}, {
"field" : "minDnTime",
"value" : "18",
"operator" : "<="
}, {
"field" : "maxDnTime",
"value" : "19",
"operator" : "="
}, {
"field" : "averageDnTime",
"value" : "20",
"operator" : "<>"
}, {
"field" : "dntimeSkewPercent",
"value" : "21",
"operator" : ">"
}, {
"field" : "warning",
"value" : "告警",
"operator" : "="
}, {
"field" : "averagePeakIops",
"value" : "22",
"operator" : "<>"
}, {
"field" : "iopsSkewPercent",
"value" : "23",
"operator" : ">"
}, {
"field" : "wlmStatus",
"value" : "语句运行状态",
"operator" : "="
}, {
"field" : "wlmAttrib",
"value" : "语句属性",
"operator" : "not like"
} ],
"order_by" : "duration asc",
"target" : "db_queries"
} 响应示例
状态码:200
查询成功。
{
"code" : 0,
"msg" : "OK",
"count" : 0,
"data" : {
"queries" : [ {
"ctime" : 1699062726000,
"pid" : "140535026615872",
"waiting" : false,
"duration" : 0,
"enqueue" : "",
"warning" : "",
"query" : "WLM fetch collect info from data nodes",
"lane" : "",
"priority" : null,
"virtual_cluster_id" : 0,
"inst_name" : "cn_5002",
"db_name" : "postgres",
"query_id" : "145522562959854219",
"query_band" : "",
"job_name" : "",
"job_inst" : "",
"user_name" : "Ruby",
"application_name" : "workload",
"client_address" : "",
"client_hostname" : "",
"client_port" : "",
"start_time" : 0,
"block_time" : 0,
"estimate_total_time" : 0,
"estimate_left_time" : 0,
"resource_pool" : "default_pool",
"control_group" : "",
"min_peak_memory" : 0,
"max_peak_memory" : 0,
"average_peak_memory" : 0,
"memory_skew_percent" : 0,
"estimate_memory" : 0,
"spill_info" : "",
"min_spill_size" : 0,
"max_spill_size" : 0,
"average_spill_size" : 0,
"spill_skew_percent" : 0,
"min_dn_time" : 0,
"max_dn_time" : 0,
"average_dn_time" : 0,
"dntime_skew_percent" : 0,
"min_cpu_time" : 0,
"max_cpu_time" : 0,
"total_cpu_time" : 0,
"cpu_skew_percent" : 0,
"average_peak_iops" : 0,
"iops_skew_percent" : 0,
"max_peak_iops" : 0,
"min_peak_iops" : 0,
"query_plan" : null,
"query_status" : "active",
"wlm_status" : "",
"wlm_attrib" : "",
"system_query" : true,
"backend_start" : 1698998138,
"elapsed_time" : 64585,
"curr_xact_start" : 1699062726,
"state_change" : 1698998142,
"query_start" : 1698998142,
"query_elapsed_time" : -1
} ],
"status" : {
"session_count" : 19,
"average_time_consumption_of_sessions" : 51297.58,
"queries_count" : 19,
"average_time_consumption_of_queries" : 48799.8,
"average_query_waiting_time" : 0
}
}
} 状态码
| 状态码 | 描述 |
|---|---|
| 200 | 查询成功。 |
| 400 | 请求错误。 |
| 401 | 鉴权失败。 |
| 403 | 没有操作权限。 |
| 404 | 找不到资源。 |
| 500 | 服务内部错误。 |
| 503 | 服务不可用。 |