1.1 系统分析器作用

可以利用系统分析器(system profiler)来查找耗时过长的操作。

系统分析器可记录特殊集合system.profile中的操作,并提供大量有关耗时长的操作信息,但相应的,会导致数据库性能有所下降。因此,我们可能只需要定期打开分析器来获取信息即可。如系统已经负载过重,则建议使用其他方法解决问题。

1.2 打开系统分析器

默认情况下,系统分析器时关闭的

>db.setProfilingLevel(2)

MongoDB 系统分析器_系统分析

MongoDB 系统分析器_系统分析_02

1.3 收集耗时长的操作

一般情况下,我们只想关注那些耗时长的操作,而非数据库中正在进行的所有操作。为此,可将分析器的分析级别设为1,及只显示长耗时操作。级别为1的分析器会默认记录耗时大于100ms的操作。

设置记录耗时超过500ms的操作

>db.setProfilingLevel(1,500)

1.4 关闭分析器

>db.setProfilingLevel(0)

MongoDB 系统分析器_系统分析_03