文档首页/ 云数据库 GeminiDB/ API参考/ API v3(推荐)/ 日志管理/ 查询GeminiDB Mongo数据库慢日志
更新时间:2023-11-23 GMT+08:00
分享

查询GeminiDB Mongo数据库慢日志

功能介绍

查询GeminiDB Mongo数据库慢日志信息,支持日志关键字搜索。

接口约束

  • 不支持使用 &&、||、AND、OR、NOT、*、?、:、>、<、=、>=、<= 这些关键字来搜索日志。
  • 查询到的慢日志数据在入参start_time和end_time的时间段内。
  • 当次查询的日志起始行号line_num须从上一次查询的日志返回信息中获取,第一次查询可不传。
  • 每页查询最大限制100条,慢日志最多保存30天。

URI

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

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

租户在某一region下的project ID。获取方法请参见获取项目ID

instance_id

String

实例ID。

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

用户Token。

表3 请求Body参数

参数

是否必选

参数类型

描述

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,取空值,表示查询实例下所有允许查询的节点。具体取值请参考表10中的“id”。

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。

响应参数

状态码: 200

表4 响应Body参数

参数

参数类型

描述

slow_logs

Array of objects

慢日志具体信息。详情请参考表5

表5 MongodbSlowLogDetail

参数

参数类型

描述

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

日志单行序列号。

请求示例

POST https://{Endpoint}/v3/619d3e78f61b4be68bc5aa0b59edcf7b/mongodb/instances/916de02c35fe4abaa3e707ebd916d3f8in10/slow-logs 
 
{ 
  "start_time" : "2021-01-06T10:41:14+0800", 
  "end_time" : "2023-01-10T10:41:14+0800", 
  "limit" : 100, 
  "line_num" : "1595659490239433658", 
  "operate_type" : "query", 
  "node_id" : "dfe41edcb2a1483c96ddf61cc0cee237no10", 
  "keywords" : [ "response", "oplog" ], 
  "database_keywords" : [ "testDB", "system_auth" ], 
  "collection_keywords" : [ "testCollection" ], 
  "max_cost_time" : 100, 
  "min_cost_time" : 50 
}

响应示例

状态码: 200

Success

{ 
  "slow_logs" : [ { 
    "node_name" : "test_replica_node_1", 
    "node_id" : "dfe41edcb2a1483c96ddf61cc0cee237no10", 
    "database" : "testDB", 
    "collection" : "testCollection", 
    "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" : 0, 
    "docs_scanned" : 0, 
    "log_time" : "2023-01-09T06:42:32.000+0000", 
    "line_num" : "1595659490239433659" 
  } ] 
}

状态码

请参见状态码

错误码

请参见错误码

相关文档