查询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 |
服务不可用。 |