云数据库 MongoDB 控制台支持查看数据库运行过程中产生的慢日志,分析慢日志以优化数据库性能。
背景信息
在 MongoDB 中慢日志经常作为优化业务操作的依据。关于慢日志的更多信息请参考 官方文档。
系统为您提供两种查询方式,分别详述如下:
抽象查询:根据时间段查询慢日志, 查询结果以 command(操作)类型进行的聚合查询分析 。
具体查询:指定具体的操作命令来查询慢日志,查询结果以列表的形式列举操作命令的耗时时间,以及日志详情。
版本说明
当前 MongoDB 所有版本均支持对慢日志进行管理。
使用须知
系统会记录执行时间超过100毫秒的操作。
慢日志保留时间为7天,单次查询时间跨度不超过1天 。
查询仅限前1万条慢日志,若查询结果缓慢,请缩小查询时间范围。
前提条件
云数据库 MongoDB 副本集实例或分片实例的状态为运行中。
操作步骤
查询慢日志
1. 登录 MongoDB 控制台。
2. 在左侧导航栏 MongoDB 的下拉列表中,选择副本集实例或者分片实例。副本集实例与分片实例操作类似。
3. 在右侧实例列表页面上方,选择地域。
4. 在实例列表中,找到目标实例。
5. 单击目标实例 ID,进入实例详情页面。
6. 选择数据库管理页签,再选择慢日志查询页签。
7. 在慢日志查询页面,选择查询方式查询慢日志。
抽象查询:选择查询时间段,并设置耗时时间阈值,单击查询。
具体查询:在查询命令选择需查询的具体的执行命令,再选择查询时间段,并设置耗时时间阈值,单击查询。
8. 查看慢日志,并分析。
抽象查询结果包含四个字段:
查询方式:抽象查询。
样例语句:以 command 类型为聚合维度而输出的语句,记录慢日志的操作。用户排查问题时主要参考 command。
说明:
command 指出慢日志中记录的操作。
COLLSCAN 代表该查询进行了全表扫描,IXSCAN 代表进行了索引扫描。
keysExamined 代表索引扫描条目,docsExamined 代表文档扫描条目。keysExamined 和 docsExamined 越大代表没有建索引或者索引的区分度不高。索引优化,请参见 索引优化解决读写性能瓶颈。
平均执行时间(MS):以 command 类型为维度聚合的操作的平均执行时间,单位是毫秒。
总次数:以 command 类型为维度聚合的操作的次数统计。
具体查询结果包含三个字段:
查询方式:具体查询。
耗时:业务命令的执行时间,单位为毫秒。
日志详情:业务命令详情。
管理慢查询
查看慢日志请求语句
1. 在慢查询管理页面,可以查看慢日志的请求语句。
2. 在右上角搜索框,输入查询信息可以进行搜索。
参数名称 | 参数信息 |
Query 语句 | 查询语句 |
Op 类型 | 操作类型 |
节点位置 | 执行操作所在的节点 |
命令空间 | 数据库表的命名空间 |
已执行时间 | 耗时时间 |
详情 | 执行语句详情信息 |
批量 Kill
1. 在慢查询管理页面,选择需清理的慢日志请求语句。
2. 单击列表上方的批量 Kill,准备清理。
3. 在提示对话框,认真阅读提示信息。
4. 单击确定。
下载慢日志文件
1. 在慢日志下载列表页面,可以查看当前的慢日志文件。
2. 找到需下载的文件,在其操作列,单击下载。