仅记录MongoDB日志中的错误

时间:2014-09-18 08:25:12

标签: mongodb logging

是否有任何选项只能记录MongoDB日志文件中的错误?

使用当前配置,似乎每个Mongo服务器的请求都记录在日志文件中:

Wed Sep 17 08:08:07.030 [conn117] insert my_database.myCol ninserted:1 keyUpdates:0 locks(micros) w:243505 285ms
Wed Sep 17 08:08:54.447 [conn101] command anotherDatabase.$cmd command: { findandmodify: "myCol", query: { ... }, new: 0, remove: 0, upsert: 0, fields: {...}, update: {...} } update: {...} ntoreturn:1 idhack:1 nupdated:1 fastmod:1 keyUpdates:0 locks(micros) w:124172 reslen:248 124ms
Wed Sep 17 08:10:24.370 [conn95] command my_database.$cmd command: { count: "cms.myCol", query: { ... }, fields: null } ntoreturn:1 keyUpdates:0 locks(micros) r:197368 reslen:48 197ms
...

目前的配置是:

# mongodb.conf

dbpath=/var/lib/mongodb
logpath=/var/log/mongodb/mongodb.log
logappend=true

如何更新配置以仅记录错误?

正在运行Mongo shell version: 2.4.10

$ mongo --version
MongoDB shell version: 2.4.10

1 个答案:

答案 0 :(得分:5)

追加quiet=true会减少很多输出。


除了当前阶段的错误外,可能无法避免任何输出信息 将slowms=threshold附加到配置文件可以进一步减少正常的日志输出 threshold是整数值(毫秒)。这意味着如果一个操作持续时间不超过此值,则不会输出正常的日志信息。默认值为100。

此外,如果实例正在运行,您可以通过其他方式更改此值。

var slowms = theValueYouWant; 
var level = db.getProfilingStatus().was;
db.setProfilingLevel(level, slowms);