MongoDB CPU 利用率高,分析慢请求

Jemeter 压测过程,发现mongodb的CPU均达到100%,需要查看mongodb的执行情况,使用mongo自带的profiling功能。

profiling将请求的执行情况记录在DB下的 system.profile 集合里,profiling 有3种模式:

点击查看官方文档

在mongodb的客户端执行:

>db.getProfilingLevel()

根据返回值

0 代表不开启

1 代表记录慢指令(默认100ms)

2 代表记录所有指令

更改此值,使其生效。

db.setProfilingLevel(1)

 

Profile默认是记录超过100ms的请求,也可以通过添加-slowms启动参数配置或调用db.setProfilingLevel时加上第二个参数控制。

db.setProfilingLevel(level,slowms);

>db.setProfilingLevel(1,100);

 

接下来就是查看最新的profile记录:

>db.system.profiling.find().sort({$natural:-1}).limit(30)

 

posted @ 2017-07-28 18:25  当年亦如是  阅读(2179)  评论(0编辑  收藏  举报