我刚刚收到了监视和分析MongoDB任务的信息。
由于检测慢查询是我的首要任务,因此我看了一下MongoDB出色的功能:探查器。我将阈值设置为40ms,以便评估慢查询。 并将该检测的日志存储在mongodb system.profile集合中。而且我们必须对system.profile集合进行查询,以获取json格式的日志。
如果我确实使用了以下流程,请执行以下操作:
MongoDB profiler => Redis (buffering) => Logstash (transform data) => Elastic (persistent storage) => Kibana(visualization)
。
因此,我必须编写脚本(nodejs, python, bash
)以便定期对Profiler集合进行查询并将其推送到Redis?还是有什么方法可以简化流程?
我可以在/var/log/mongodb/mongod.log
中使用mongod日志,然后使用logstash直接操作该日志吗?
感谢您的宝贵时间。 :)