如何验证从express.js服务器到mongo的每个查询?
我看上去像管理数据库分析器,我已经将配置文件级别设置为db.setProfilingLevel(2,200)。在我的页面上,使用mongoose调用下面的mongo DB,如下所示
mycollection.findOne({MyId: 1}, function(err, data){
})当我查看日志文件时,无法访问"mycollection“。另外,日志文件有时会包含对我的一些页面的查询,如下所示。
2014-07-30T13:11:59.258-0700 conn33查询myDB.myOtherCollection查询:{ MyID: 100 } planSummary: COLLSCAN :0 ntoskip:850个nscanned
那么,向mongo数据库显示所有查询日志的方法是什么呢?
发布于 2014-07-31 02:39:55
由于您使用的是猫鼬,所以可以通过启用调试来查看执行的查询。
mongoose.set('debug', true)发布于 2014-07-31 17:44:54
db.setProfilingLevel有一个可选的level参数,当设置为2时,会记录数据库的system.profile集合中的所有操作,而不是日志文件中的操作。slowMS参数确定查询在记录到日志文件之前必须有多慢。
如果希望密切监视集合中的活动,请考虑使用彩信进行监视,因为它以比system.profile更友好的格式公开了许多有用的用法、性能和分析信息。
发布于 2014-07-30 21:02:00
如果要将第二个参数slowMS设置为1ms,这将记录所有花费超过1ms的查询--几乎所有这些查询都是这样。
https://stackoverflow.com/questions/25046599
复制相似问题