
# 查询数据库慢日志（新版）-QueryingDatabaseSlowLogs(New)
#### 接口说明
查询数据库慢日志信息，支持关键字、数据库表名等搜索功能。
#### 约束说明
- 如果原始日志中本身包含关键字（\&\&、\|\|、AND、OR、NOT、\*、？、:、\>、\<、=、\>=、\<=），则不支持使用这些关键字来搜索日志。
- 每页查询最大限制100条。
- 慢日志最多保存30天。
 
#### 调试
您可以在[API Explorer](https://apiexplorer.developer.huaweicloud.com/apiexplorer/doc?product=DDS&api=ListLtsSlowLogs)中调试该接口。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-dds/dds_api_permission.html)。
- 如果使用身份策略授权，需具备如下身份策略权限。
  
  | 授权项                      | 访问级别 | 资源类型（\*为必须） | 条件键                                                                                                              | 别名                | 依赖的授权项 |
  |:---|:---|:---|:---|:---|:---|
  | dds:instance:listSlowLog | list | instance    | [g:EnterpriseProjectId](https://support.huaweicloud.com/api-dds/dds_api_0042.html#dds_api_0042__li1539015369314) | dds:instance:list | -      |
     
  
 
#### URI
- URI格式 POST /v3.1/{project_id}/instances/{instance_id}/slow-logs
  
- URI样例 https://dds.cn-north-1.myhuaweicloud.com/v3.1/0483b6b16e954cb88930a360d2c4e663/instances/6ade8143870047b8999aba8f1891b48ein02/slow-logs
  
 
表1路径参数 
| 名称          | 是否必选 | 类型     | IN   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
|:---|:---|:---|:---|:---|
| project_id  | 是    | string | path | **参数解释：** 租户在某一Region下的项目ID。请参考[获取项目ID](https://support.huaweicloud.com/api-dds/dds_projectid.html)章节获取项目编号。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                |
| instance_id | 是    | string | path | **参数解释：** 实例ID，可以调用"[查询实例列表和详情-QueryingInstancesandDetails](https://support.huaweicloud.com/api-dds/dds_api_0023.html)"接口获取。如果未申请实例，可以调用"[创建实例-CreatingaDBInstance](https://support.huaweicloud.com/api-dds/dds_api_0020.html)"接口创建。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。 |
   
#### 请求消息
表2请求Header参数 
| 名称           | 是否必选 | 类型     | IN     | 描述                                                                                                                                                                                                                                                                                                                                                                     |
|:---|:---|:---|:---|:---|
| X-Auth-Token | 是    | string | header | **参数解释：** 从IAM服务获取的用户Token。请参考[认证鉴权](https://support.huaweicloud.com/api-dds/dds_api_0010.html)。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。 |
   
表3参数说明 
| 名称                  | 类型               | 是否必选 | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
|:---|:---|:---|:---|
| start_time          | String           | 是    | 开始时间，格式为"yyyy-mm-ddThh:mm:ssZ"。 其中，T指某个时间的开始，Z指时区偏移量，例如北京时间偏移显示为+0800。 注意： 开始时间不得早于当前时间30天。                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| end_time            | String           | 是    | 结束时间，格式为"yyyy-mm-ddThh:mm:ssZ"。 其中，T指某个时间的开始；Z指时区偏移量，例如北京时间偏移显示为+0800。 说明： 结束时间不能晚于当前时间。                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| limit               | Integer          | 是    | 表示每次查询的日志条数，最大限制100条。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| line_num            | String           | 否    | 日志单行序列号，第一次查询时不需要此参数，下一次查询时需要使用，可从上一次查询的返回信息中获取。 说明： 当次查询从line_num的下一条日志开始查询，不包含当前line_num日志。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| operate_type        | String           | 否    | 语句类型，取空值，表示查询所有语句类型。 取值如下： - insert  - query  - update  - remove  - getmore  - command  - killcursors   |
| node_id             | String           | 否    | 节点ID，请参考[表9](https://support.huaweicloud.com/api-dds/dds_api_0023.html#dds_api_0023__table3426155424213)的"id"。 取空值，表示查询实例下所有允许查询的节点。 允许查询的节点如下： - 集群实例下面的 shard节点。  - 副本集、单节点实例下面的所有节点。                                                                                                                                                                                                                     |
| keywords            | Array of strings | 否    | 根据多个关键字搜索日志全文，表示同时匹配所有关键字。 - 只支持关键字前缀模糊搜索，最多支持10个关键字。  - 每个关键字最大长度不超过512个字符。                                                                                                                                                                                                                                                                                                                                                                                            |
| database_keywords   | Array of strings | 否    | 根据多个数据库关键字模糊搜索日志，表示匹配至少一个关键字。 - 只支持关键字前缀模糊搜索，最多支持10个关键字。  - 每个关键字最大长度不超过64个字符。                                                                                                                                                                                                                                                                                                                                                                                      |
| collection_keywords | Array of strings | 否    | 根据多个数据库表名关键字模糊搜索日志，表示匹配至少一个关键字。 - 只支持关键字前缀模糊搜索，最多支持10个关键字。  - 每个关键字最大长度不超过128个字符。                                                                                                                                                                                                                                                                                                                                                                                      |
| max_cost_time       | Integer          | 否    | 支持根据最大执行时间范围查找日志。 单位：ms。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| min_cost_time       | Integer          | 否    | 支持根据最小执行时间范围查找日志。 单位：ms。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
   
#### 请求示例
查询某个时间段的数据库查询类语句的慢日志，每次查询的日志条数为100条，可以通过关键字搜索日志全文，可以根据最大执行时间100ms范围查找日志，根据最小执行时间50ms范围查找日志。
```
{ 
  "start_time" : "2022-09-06T10:41:14+0800", 
  "end_time" : "2022-09-16T10:41:14+0800", 
  "limit" : 100
}
```
#### 响应消息
- 参数说明
  表4参数说明 
  | 名称        | 参数类型             | 说明                                                                             |
  |:---|:---|:---|
  | slow_logs | Array of objects | 慢日志具体信息。 详情请参见[表5]。 |
     
   表5slowLogDetail字段数据结构说明 
  | 名称                   | 参数类型    | 说明                                                                            |
  |:---|:---|:---|
  | node_name            | String  | 节点名称。                                                                         |
  | node_id              | String  | 节点ID。                                                                         |
  | whole_message        | String  | 执行语句。                                                                         |
  | operate_type         | String  | 语句类型。                                                                         |
  | cost_time            | Integer | 执行时间。 单位：ms。                                  |
  | lock_time            | Integer | 等待锁时间。 单位：us。                                  |
  | docs_returned        | Integer | 返回的文档数。                                                                       |
  | docs_scanned         | Integer | 扫描的文档数。                                                                       |
  | database             | String  | 日志所属的数据库库名。                                                                   |
  | collection           | String  | 日志所属的数据库表名。                                                                   |
  | log_time             | String  | 日志产生时间，UTC时间。格式为"yyyy-mm-ddThh:mm:ssZ"。其中，T指某个时间的开始；Z指时区偏移量，例如北京时间偏移显示为+0800。 |
  | line_num             | String  | 日志单行序列号。                                                                      |
  | index_recommendation | String  | 推荐的创建索引命令。使用此命令创建索引可优化该慢查询语句。如果结果为空，说明不需要推荐索引，或AI未识别出可优化的索引。                  |
     
  
 
#### 响应示例
```
{ 
  "slow_logs" : [ { 
    "node_name" : "Test_replica_node_2", 
    "node_id" : "dbd0b65ed0c34125a0b04d4e5ba67e66no02", 
    "whole_message" : "{\"responseLength\": 230, \"ts\": {\"$date\": 1605480486800}, \"ninserted\": 1, \"locks\": {\"oplog\": {\"acquireCount\": {\"w\": 1}}, \"Global\": {\"acquireCount\": {\"r\": 3, \"w\": 2}}, \"Collection\": {\"acquireCount\": {\"w\": 2}}, \"Database\": {\"acquireCount\": {\"w\": 3}}}, \"numYield\": 0, \"ns\": \"geographySpace.tiles\"}", 
    "operate_type" : "query", 
    "cost_time" : 60, 
    "lock_time" : 10, 
    "docs_returned" : 60, 
    "docs_scanned" : 70, 
    "database" : "testDB", 
    "collection" : "testCollection", 
    "log_time" : "2022-09-15T22:49:38.643000Z", 
    "line_num" : "1595659490239433659" 
  } ] 
}
```
#### SDK
单击[文档数据库服务 DDS SDK](https://sdkcenter.developer.huaweicloud.com/?product=DDS)，下载SDK或查看SDK文档。SDK的安装、认证方式等在SDK文档中对应语言类型的【使用】目录下。
#### 状态码
详情请参见[状态码](https://support.huaweicloud.com/api-dds/dds_status_code.html)。
#### 错误码
详情请参见[错误码](https://support.huaweicloud.com/api-dds/dds_error_code.html)。
