首页 / MONGODB / 【Mongodb】开启慢查询
【Mongodb】开启慢查询
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了【Mongodb】开启慢查询,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1805字,纯文字阅读大概需要3分钟。
内容图文
慢查询
开启慢查询 && 获取慢查询语句
- 获取当前监控状态
db.getProfilingStatus()
- 设置监控
db.setProfilingLevel(level,options)
level | integer | profiler level
0 : 关闭日志收集
1 : 收集大于slowms的日志
2 : 收集所有日志
options | document/integer | Optional
若是整数, 则赋值给slowms
若是对象 , 则是
slowms : 阈值 Default: 100 , 单位毫秒(milliseconds)
sampleRate : 采样率 Default: 1.0 , eg. 1 记录所有慢查询 , 0.5 记录50%的慢查询
- 获取慢查询
// 按执行时间排序获取前20条
db.system.profile.find().sort( { millis : -1 } ).limit(20).pretty();
// 获取最近20条执行数据
db.system.profile.find().limit(20).sort( { ts : -1 } ).pretty();
// 获取大于100ms的查询的20条数据
db.system.profile.find( { millis : { $gt : 100 } } ).limit(20).pretty()
// 获取时间范围段
db.system.profile.find({
ts : {
$gt: new ISODate("2020-06-09T03:00:00Z"),
$lt: new ISODate("2020-06-09T03:40:00Z")
}
}).limit(20).pretty()
注意
分析可能会影响性能并与系统日志共享设置。在生产部署上配置和启用探查器之前,请仔细考虑所有性能和安全隐患。
扩展
日志保存在system.profile集合中, 这是一个固定集合, 默认大小:1M.
若要修改system.profile固定集合大小 , 可按下面4步
- 禁止日志记录
- 删除system.profile集合
- 创建一个新system.profile 集合
- 重新启用分析
例如 : 创建一个4 MB大小的日志收集集合
shell
db.setProfilingLevel(0)
db.system.profile.drop()
db.createCollection( "system.profile", { capped: true, size:4000000 } )
db.setProfilingLevel(1)
参考文章
https://docs.mongodb.com/manual/reference/command/profile/
https://docs.mongodb.com/manual/tutorial/manage-the-database-profiler/#database-profiling-overhead
GitHub
GitHub Link
【Mongodb】开启慢查询
标签:查询 options 赋值 状态 ons comm 语句 sort and
本文系统来源:https://www.cnblogs.com/WilsonPan/p/13231187.html
内容总结
以上是互联网集市为您收集整理的【Mongodb】开启慢查询全部内容,希望文章能够帮你解决【Mongodb】开启慢查询所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。