
# 查询SQL链路信息 - QueryingSQLLinkInformation
#### 功能介绍
主要用于查询SQL某次执行（对应归一化SQL ID和唯一SQL ID传值）过程中的全部链路信息，包含各个阶段的多维度耗时统计。对于分布式版实例，可查询对应SQL的完整执行链路，包含CN和DN上SQL语句的耗时分析。
- 调用接口前，您需要了解API [认证鉴权](https://support.huaweicloud.com/api-gaussdb/gaussdb_api_011.html)。
- 调用接口前，您需要提前获取到[地区和终端节点](https://developer.huaweicloud.com/endpoint)。
 
#### 调试
您可以在[API Explorer](https://apiexplorer.developer.huaweicloud.com/apiexplorer/doc?product=GaussDBforopenGauss&api=ListSqlTrace)中调试该接口。
#### URI
GET /v3/{project_id}/instances/{instance_id}/full-sql/sql-trace
表1参数说明 
| 名称          | 是否必选 | 参数类型   | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
|:---|:---|:---|:---|
| project_id  | 是    | String | **参数解释：** 租户在某一Region下的项目ID。 获取方法请参见[获取项目ID](https://support.huaweicloud.com/api-gaussdb/gaussdb_api_196.html)。 **约束限制：** 不涉及。 **取值范围：** 只能由英文字母、数字组成，且长度为32个字符。 **默认取值**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| instance_id | 是    | String | **参数解释：** 实例ID，此参数是用户创建实例的唯一标识。请参考[查询数据库实例列表 - QueryingDBInstances](https://support.huaweicloud.com/api-gaussdb/gaussdb_api_328.html)接口获取实例ID。 **约束限制：** 不涉及。 **取值范围：** 只能由英文字母、数字组成，且长度为36个字符。 **默认取值** **：** 不涉及。 |
   
表2请求Query参数 
| 参数             | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
|:---|:---|:---|:---|
| sql_id         | 否    | String | **参数解释：** 归一化SQL ID，对应内核字段：unique_sql_id。获取方式请参考[查询全量单条SQL列表 - QueryingFullDatabySQLStatement](https://support.huaweicloud.com/api-gaussdb/gaussdb_api_541.html)。 **约束限制：** 与sql_exec_id、transaction_id、trace_id至少需要传值一个，请勿不做任何过滤。 **取值范围：** 不涉及。 **默认取值** **：** 不涉及。              |
| sql_exec_id    | 否    | String | **参数解释** **：** 唯一SQL ID，对应内核字段：debug_query_id。获取方式请参考[查询全量单条SQL列表 - QueryingFullDatabySQLStatement](https://support.huaweicloud.com/api-gaussdb/gaussdb_api_541.html)。 **约束限制** **：** 与sql_id、transaction_id、trace_id至少需要传值一个，请勿不做任何过滤。 **取值范围** **：** 不涉及。 **默认取值** **：** 不涉及。 |
| transaction_id | 否    | String | **参数解释：** 事务ID，对应内核字段：transaction_id。获取方式请参考[查询全量单条SQL列表 - QueryingFullDatabySQLStatement](https://support.huaweicloud.com/api-gaussdb/gaussdb_api_541.html)。 **约束限制：** 与sql_id、sql_exec_id、trace_id至少需要传值一个，请勿不做任何过滤。 **取值范围：** 不涉及。 **默认取值** **：** 不涉及。                           |
| trace_id       | 否    | String | **参数解释：** 链路ID，对应内核字段：trace_id。获取方式请参考[查询全量单条SQL列表 - QueryingFullDatabySQLStatement](https://support.huaweicloud.com/api-gaussdb/gaussdb_api_541.html)。 **约束限制：** 与sql_id、sql_exec_id、transaction_id至少需要传值一个，请勿不做任何过滤。 **取值范围：** 不涉及。 **默认取值** **：** 不涉及。                               |
   
![](https://support.huaweicloud.com/api-gaussdb/public_sys-resources/notice_3.0-zh-cn.png)
特别注意，结合全量SQL业务特性，实际调用时，以上四个参数请至少传值一个，请勿不做任何过滤。
#### 请求参数
表3请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
|:---|:---|:---|:---|
| X-Auth-Token | 是    | String | **参数解释：** 用户Token。 通过调用IAM服务[获取用户Token](https://support.huaweicloud.com/api-iam/iam_30_0001.html)接口获取。 请求响应成功后在响应消息头中包含的"X-Subject-Token"的值即为Token值。 **约束限制：** 不涉及。 **取值范围** **：** 不涉及。 **默认取值** **：** 不涉及。 |
| X-Language   | 否    | String | **参数解释：** 指定接口返回信息的语言类型。 **约束限制：** 不涉及。 **取值范围** **：** - **zh-cn：**中文  - **en-us** **：**英文   **默认取值** **：** **en-us**                 |
   
#### 响应参数
表4响应Body参数 
| **参数**   | **参数类型** | **描述**                                                                                                                                                                                                                                                                            |
|:---|:---|:---|
| \[数组元素\] | Array    | **参数解释** **：** SQL链路节点执行信息列表。 详情请参见[表5]。 |
   
 表5NodeExecutionInfo 
| **参数**                 | **参数类型** | **描述**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
|:---|:---|:---|
| component_id           | String   | **参数解释** **：** 组件ID。 **取值范围** **：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                               |
| node_id                | String   | **参数解释** **：** 节点ID。 **取值范围** **：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| transaction_id         | String   | **参数解释** **：** 事务ID。 **取值范围** **：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| sql_id                 | String   | **参数解释** **：** 归一化SQL ID。 **取值范围** **：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                               |
| sql_exec_id            | String   | **参数解释** **：** 唯一SQL ID。 **取值范围** **：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| db_name                | String   | **参数解释** **：** 数据库名称。 **取值范围** **：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| schema_name            | String   | **参数解释** **：** schema名称。 **取值范围** **：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| start_time             | String   | **参数解释** **：** 语句启动的时间，格式为"yyyy-mm-ddThh:mm:ssssssZ"。其中，T指某个时间的开始；Z指时区偏移量，例如北京时间偏移显示为+0800。 **取值范围** **：** 不涉及。                                                                                                                                                                                                                                                                                                                                                               |
| finish_time            | String   | **参数解释** **：** 语句结束的时间，格式为"yyyy-mm-ddThh:mm:ssssssZ"。其中，T指某个时间的开始；Z指时区偏移量，例如北京时间偏移显示为+0800。 **取值范围** **：** 不涉及。                                                                                                                                                                                                                                                                                                                                                              |
| all_time               | Long     | **参数解释** **：** 执行总耗时（单位：微秒）。 **取值范围** **：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                            |
| user_name              | String   | **参数解释** **：** 用户名。 **取值范围** **：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| client_addr            | String   | **参数解释** **：** 用户发起的请求的客户端地址。 **取值范围** **：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                |
| client_port            | Integer  | **参数解释** **：** 用户发起的请求的客户端端口。 **取值范围** **：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                              |
| trace_id               | String   | **参数解释** **：** 驱动传入的trace id，与应用的一次请求相关联。 **取值范围** **：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                              |
| application_name       | String   | **参数解释** **：** 用户发起的请求的应用程序名称。 **取值范围** **：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                         |
| session_id             | String   | **参数解释** **：** 用户session id。 **取值范围** **：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                              |
| is_slow_sql            | Boolean  | **参数解释** **：** 该SQL是否为慢SQL。 **取值范围** **：** - true：是慢SQL。  - false：不是慢SQL。   |
| execution_time_details | Object   | **参数解释** **：** 执行时间详细信息。 详情请参见[表6]。                                                                                                                                                                                                                                                                                                                                                                                                                                  |
   
 表6ExecutionTimeDetail 
| **参数**                | **参数类型** | **描述**                                                                                                                                                                                                                                                                                           |
|:---|:---|:---|
| resource_time         | Object   | **参数解释** **：** 资源耗时信息。 详情请参见[表7 ResourceTime]。           |
| kernel_time           | Object   | **参数解释** **：** 内核模块耗时信息。 详情请参见[表9 KernelTime]。               |
| kernel_execution_time | Object   | **参数解释** **：** 内核执行模块耗时信息。 详情请参见[表11 KernelExecutionTime]。 |
| wait_event_time       | Object   | **参数解释** **：** 等待事件和语句锁事件耗时信息。 详情请参见[表13 WaitEventTime]。 |
   
 表7ResourceTime 
| **参数**                | **参数类型** | **描述**                                                                                                                                                                                                                                                                                         |
|:---|:---|:---|
| all_time              | Long     | **参数解释** **：** 总耗时（单位：微秒）。 **取值范围** **：** 不涉及。            |
| resource_time_details | Object   | **参数解释** **：** 资源耗时详细信息。 详情请参见[表8 ResourceTimeDetail]。 |
   
 表8ResourceTimeDetail 
| **参数**       | **参数类型** | **描述**                                                                                                                                                                                                                                                                                    |
|:---|:---|:---|
| cpu_time     | Long     | **参数解释** **：** CPU时间（单位：微秒）。 **取值范围** **：** 不涉及。      |
| data_io_time | Long     | **参数解释** **：** IO上的时间花费（单位：微秒）。 **取值范围** **：** 不涉及。 |
| other_time   | Long     | **参数解释** **：** 其余耗时（单位：微秒）。 **取值范围** **：** 不涉及。        |
   
 表9KernelTime 
| **参数**              | **参数类型** | **描述**                                                                                                                                                                                                                                                                                           |
|:---|:---|:---|
| all_time            | Long     | **参数解释** **：** 总耗时（单位：微秒）。 **取值范围**： 不涉及。                     |
| kernel_time_details | Object   | **参数解释** **：** 内核耗时详细信息。 详情请参见[表10 KernelTimeDetail]。 |
   
 表10KernelTimeDetail 
| **参数**         | **参数类型** | **描述**                                                                                                                                                                                                                                                                                    |
|:---|:---|:---|
| parse_time     | Long     | **参数解释** **：** SQL解析时间（单位：微秒）。 **取值范围** **：** 不涉及。 |
| rewrite_time   | Long     | **参数解释** **：** SQL重写时间（单位：微秒）。 **取值范围** **：** 不涉及。      |
| plan_time      | Long     | **参数解释** **：** SQL生成计划时间（单位：微秒）。 **取值范围** **：** 不涉及。   |
| execution_time | Long     | **参数解释** **：** 执行器内执行时间（单位：微秒）。 **取值范围** **：** 不涉及。    |
| other_time     | Long     | **参数解释** **：** 其余耗时（单位：微秒）。 **取值范围** **：** 不涉及。      |
   
 表11KernelExecutionTime 
| **参数**                        | **参数类型** | **描述**                                                                                                                                                                                                                                                                                           |
|:---|:---|:---|
| all_time                      | Long     | **参数解释** **：** 总耗时（单位：微秒）。 **取值范围** **：** 不涉及。              |
| kernel_execution_time_details | Object   | **参数解释** **：** 内核执行耗时详细信息。 详情请参见[表12 KernelExecTimeDetail]。 |
   
 表12KernelExecTimeDetail 
| **参数**         | **参数类型** | **描述**                                                                                                                                                                                                                                                                                |
|:---|:---|:---|
| execution_time | Long     | **参数解释** **：** 执行器内执行时间（单位：微秒）。 **取值范围** **：** 不涉及。 |
| other_time     | Long     | **参数解释** **：** 其余耗时（单位：微秒）。 **取值范围** **：** 不涉及。     |
   
 表13WaitEventTime 
| **参数**                   | **参数类型** | **描述**                                                                                                                                                                                                                                                                                              |
|:---|:---|:---|
| code_wait_event_time     | Object   | **参数解释** **：** 等待事件代码耗时。 详情请参见[表14 CodeWaitEventTime]。      |
| resource_wait_event_time | Object   | **参数解释** **：** 资源类等待事件耗时。 详情请参见[表15 ResourceWaitEventTime]。 |
   
 表14CodeWaitEventTime 
| **参数**                       | **参数类型** | **描述**                                                                                                                                                                                                                                                                                 |
|:---|:---|:---|
| all_time                     | Long     | **参数解释** **：** 总耗时（单位：微秒）。 **取值范围** **：** 不涉及。 |
| code_wait_event_time_details | Object   | **参数解释** **：** 内核模块耗时信息。 详情请参见[表20 EventTime]。    |
   
 表15ResourceWaitEventTime 
| **参数**                           | **参数类型** | **描述**                                                                                                                                                                                                                                                                                                   |
|:---|:---|:---|
| all_time                         | Long     | **参数解释** **：** 总耗时（单位：微秒）。 **取值范围** **：** 不涉及。                      |
| resource_wait_event_time_details | Object   | **参数解释** **：** 资源类等待事件耗时详细信息。 详情请参见[表16 ResourceWaitEvenTimeDetail]。 |
| other_time                       | Long     | **参数解释** **：** 资源类等待事件外耗时（单位：微秒）。 **取值范围** **：** 不涉及。              |
   
 表16ResourceWaitEvenTimeDetail 
| **参数**       | **参数类型** | **描述**                                                                                                                                                                                                                                                                                    |
|:---|:---|:---|
| data_io_time | Object   | **参数解释** **：** IO耗时信息。 详情请参见[表17 DataIoTime]。    |
| lock_time    | Object   | **参数解释** **：** 加锁耗时信息。 详情请参见[表18 LockTime]。        |
| lwlock_time  | Object   | **参数解释** **：** 轻量级加锁耗时信息。 详情请参见[表19 LwlockTime]。 |
   
 表17DataIoTime 
| **参数**               | **参数类型** | **描述**                                                                                                                                                                                                                                                                                |
|:---|:---|:---|
| all_time             | Long     | **参数解释** **：** 总耗时（单位：微秒）。 **取值范围** **：** 不涉及。   |
| data_io_time_details | Object   | **参数解释** **：** 内核侧IO耗时详情。 详情请参见[表20 EventTime]。 |
   
 表18LockTime 
| **参数**            | **参数类型** | **描述**                                                                                                                                                                                                                                                                                     |
|:---|:---|:---|
| all_time          | Long     | **参数解释** **：** 总耗时（单位：微秒）。 **取值范围** **：** 不涉及。          |
| lock_time_details | Object   | **参数解释** **：** 内核侧加锁耗时详细信息。 详情请参见[表20 EventTime]。 |
   
 表19LwlockTime 
| **参数**              | **参数类型** | **描述**                                                                                                                                                                                                                                                                                 |
|:---|:---|:---|
| all_time            | Long     | **参数解释** **：** 总耗时（单位：微秒）。 **取值范围** **：** 不涉及。  |
| lwlock_time_details | Object   | **参数解释** **：** 内核侧轻量级锁耗时详情。 详情请参见[表20 EventTime]。 |
   
 表20EventTime 
| **参数**     | **参数类型** | **描述**                                                                                                                                                                                                                                                                                 |
|:---|:---|:---|
| events     | Array    | **参数解释** **：** TOP5事件耗时信息列表。 详情请参见[表21 TopTime]。  |
| left_time  | Long     | **参数解释** **：** 其余事件耗时（单位：微秒）。 **取值范围** **：** 不涉及。 |
| other_time | Long     | **参数解释** **：** 事件外耗时（单位：微秒）。 **取值范围** **：** 不涉及。  |
   
 表21TopTime 
| **参数**     | **参数类型** | **描述**                                                                                                                                                                                                                                                                              |
|:---|:---|:---|
| event_name | String   | **参数解释** **：** 事件名。 **取值范围** **：** 不涉及。          |
| event_time | Long     | **参数解释** **：** 事件耗时（单位：微秒）。 **取值范围** **：** 不涉及。 |
   
#### 请求示例
查询指定单条SQL的链路信息。
```
GET https://gaussdb-opengauss.cn-north-1.myhuaweicloud.com/v3/4a89780fa1024361bcb855fed6aab89e/instances/cf9c879513144362bce2b3760ed81d3bin14/full-sql/sql-trace?sql_id=67570929&sql_exec_id=72620543991485094&id=f084ca811d62f93af3dff2d508a981bc
```
#### 响应示例
```
[
    {
        "component_id": "cn_5001",
        "node_id": "b470c6297bb24c258e3eccf8dcaaa3f0no14",
        "transaction_id": "0",
        "sql_id": "67570929",
        "sql_exec_id": "72620543991485094",
        "db_name": "postgres",
        "schema_name": "\"$user\",public",
        "start_time": "2025-08-08 09:59:28Z",
        "finish_time": "2025-08-08 09:59:28Z",
        "all_time": 474,
        "user_name": "rdsAdmin",
        "client_addr": "127.0.0.1",
        "client_port": 51698,
        "trace_id": "",
        "application_name": "cm_agent",
        "session_id": "140316080338496",
        "is_slow_sql": false,
        "execution_time_details": {
            "resource_time": {
                "all_time": 474,
                "resource_time_details": {
                    "cpu_time": 417,
                    "data_io_time": 0,
                    "other_time": 57
                }
            },
            "kernel_time": {
                "all_time": 474,
                "kernel_time_details": {
                    "parse_time": 21,
                    "rewrite_time": 3,
                    "plan_time": 132,
                    "execution_time": 16,
                    "other_time": 318
                }
            },
            "kernel_execution_time": {
                "all_time": 474,
                "kernel_execution_time_details": {
                    "execution_time": 16,
                    "other_time": 458
                }
            },
            "wait_event_time": {
                "code_wait_event_time": {
                    "all_time": 474,
                    "code_wait_event_time_details": {
                        "events": [
                            {
                                "event_name": "wait seq scan",
                                "event_time": 57
                            },
                            {
                                "event_name": "flush data",
                                "event_time": 28
                            },
                            {
                                "event_name": "wait xact commit command",
                                "event_time": 21
                            },
                            {
                                "event_name": "wait xact start command",
                                "event_time": 13
                            },
                            {
                                "event_name": "wait heap hot search buffer",
                                "event_time": 9
                            }
                        ],
                        "left_time": 0,
                        "other_time": 346
                    }
                },
                "resource_wait_event_time": {
                    "all_time": 474,
                    "resource_wait_event_time_details": {
                        "data_io_time": {
                            "all_time": 0,
                            "data_io_time_details": {
                                "events": [
                                    {
                                        "event_name": "BufHashTableSearch",
                                        "event_time": 16
                                    }
                                ],
                                "left_time": 0,
                                "other_time": 0
                            }
                        },
                        "lock_time": {
                            "all_time": 0,
                            "lock_time_details": {
                                "events": [],
                                "left_time": 0,
                                "other_time": 0
                            }
                        },
                        "lwlock_time": {
                            "all_time": 0,
                            "lwlock_time_details": {
                                "events": [],
                                "left_time": 0,
                                "other_time": 0
                            }
                        }
                    },
                    "other_time": 0
                }
            }
        }
    }
]
```
#### 状态码
- 正常 200
  
- 异常 请参见[状态码](https://support.huaweicloud.com/api-gaussdb/gaussdb_api_194.html)。
  
 
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-gaussdb/gaussdb_api_195.html)。
