更新时间:2024-05-21 GMT+08:00

查询Top IO列表

功能介绍

查询实例数据库进程下的Top IO流量数据,返回与会话信息相关联后的结果。

接口约束

实例资源类型和操作系统需支持pidstat命令。

URI

GET https://{Endpoint}/v3/{project_id}/instances/{instance_id}/top-io-traffics?node_id={node_id}&component_id={component_id}&top_io_num={top_io_num}&sort_condition={sort_condition}

表1 参数说明

参数

是否必选

参数类型

描述

project_id

String

租户在某一Region下的项目ID。

获取方法请参见获取项目ID

instance_id

String

实例ID。

node_id

String

节点ID。节点应为CN或者非日志角色的DN节点,并且节点状态为正常。可通过接口查询实例的组件列表查询。

component_id

String

组件ID。组件应为CN或者非日志角色的DN组件。可通过接口查询实例的组件列表查询。

  • DN:Data Node,和CN对应的概念。负责实际执行表数据的存储、查询操作。
  • CN:Coordinator Node,负责数据库系统元数据存储、查询任务的分解和部分执行,以及将DN中查询结果汇聚在一起。

top_io_num

Integer

期望查询数据库进程下TOP IO线程数(默认值为20)。接口返回TOP IO线程与会话信息关联后的结果,数量最大不超过该值。

sort_condition

String

TOP IO排序条件。

枚举值:

  • read
  • write

请求参数

无。

响应参数

表2 参数说明

参数

参数类型

描述

top_io_infos

Array of objects

列表中每个元素表示一个Top IO流量数据信息,详情参见表3

表3 top_io_infos字段数据结构说明

参数

参数类型

描述

thread_id

String

线程ID。

thread_type

String

线程分类标识,取值:业务(worker)和后台(background)。需将GUC参数"enable_thread_pool"设置为on。

枚举值:

  • worker
  • background

disk_read_rate

Integer

从磁盘读取数据速率, 单位:KB/s。

disk_write_rate

Integer

写入磁盘数据速率, 单位:KB/s。

session_id

String

会话ID。

unique_sql_id

String

SQL ID。

database_name

String

数据库。

client_ip

String

客户端IP。

user_name

String

用户名。

state

String

状态。

sql_start

Integer

语句开始时间。

请求示例

查询Top IO列表成功。

GET https://gaussdb-opengauss.ap-southeast-1.myhuaweicloud.com/v3/0483b6b16e954cb88930a360d2c4e663/instances/{instance_id}/top-io-traffics?node_id=42cbf784585e419d9eb33c005f4ced94no14&component_id=dn_6001&top_io_num=20&sort_condition=write

响应示例

{ 
  "top_io_infos" : [ { 
    "thread_id" : "55067", 
    "thread_type" : "worker", 
    "disk_read_rate" : 0, 
    "disk_write_rate" : 1.43, 
    "session_id" : "725", 
    "unique_sql_id" : "3545025713", 
    "database_name" : "postgres", 
    "client_ip" : "23.100.74.131", 
    "user_name" : "root", 
    "state" : "active", 
    "sql_start" : 1690448618689 
  } ] 
}

状态码

错误码

请参见错误码