更新时间:2023-11-24 GMT+08:00

查询数据库慢日志(新版)

接口说明

查询数据库慢日志信息,支持关键字、数据库表名等搜索功能。

约束说明

  • 如果原始日志中本身包含关键字(&&、||、AND、OR、NOT、*、?、:、>、<、=、>=、<=),则不支持使用这些关键字来搜索日志。
  • 每页查询最大限制100条。
  • 慢日志最多保存30天。

URI

  • URI格式

    POST https://{Endpoint}/v3.1/{project_id}/instances/{instance_id}/slow-logs

  • URI样例

    https://dds.ap-southeast-1.myhuaweicloud.com/v3.1/0483b6b16e954cb88930a360d2c4e663/instances/6ade8143870047b8999aba8f1891b48ein02/slow-logs

表1 请求参数

名称

类型

IN

是否必选

描述

X-Auth-Token

string

header

从IAM服务获取的用户Token。请参考认证鉴权

project_id

string

path

租户在某一Region下的项目ID。请参考获取项目ID章节获取项目编号。

instance_id

string

path

实例ID,可以调用“查询实例列表和详情”接口获取。如果未申请实例,可以调用“创建实例”接口创建。

请求消息

  • 参数说明
    表2 参数说明

    名称

    类型

    是否必选

    说明

    start_time

    String

    开始时间,格式为“yyyy-mm-ddThh:mm:ssZ”。

    其中,T指某个时间的开始,Z指时区偏移量。

    注意:

    开始时间不得早于当前时间30天。

    end_time

    String

    结束时间,格式为“yyyy-mm-ddThh:mm:ssZ”。

    其中,T指某个时间的开始;Z指时区偏移量。

    说明:

    结束时间不能晚于当前时间。

    limit

    Integer

    表示每次查询的日志条数,最大限制100条。

    line_num

    String

    日志单行序列号,第一次查询时不需要此参数,下一页查询时需要使用,可从上一次查询的返回信息中获取。

    说明:

    当次查询从line_num的下一条日志开始查询,不包含当前line_num日志。

    operate_type

    String

    语句类型,取空值,表示查询所有语句类型。

    取值如下:

    • insert
    • query
    • update
    • remove
    • getmore
    • command
    • killcursors

    node_id

    String

    节点ID,请参考表8的“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, 
  "line_num" : "1595659490239433658", 
  "operate_type" : "query",
  "node_id" : "dbd0b65ed0c34125a0b04d4e5ba67e66no02", 
  "keywords" : [ "response", "oplog" ],
  "database_keywords" : [ "testDB" ], 
  "collection_keywords" : [ "testCollection" ], 
  "max_cost_time" : 100, 
  "min_cost_time" : 50
}

响应消息

  • 参数说明
    表3 参数说明

    名称

    参数类型

    说明

    slow_logs

    Array of objects

    慢日志具体信息。

    详情请参见表4

    表4 slowLogDetail字段数据结构说明

    名称

    参数类型

    说明

    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指时区偏移量。

    line_num

    String

    日志单行序列号。

  • 响应示例
    { 
      "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,下载SDK或查看SDK文档。SDK的安装、认证方式等在SDK文档中对应语言类型的【使用】目录下。

状态码

详情请参见状态码

错误码

详情请参见错误码