是否有任何选项只能记录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
答案 0 :(得分:5)
追加quiet=true
会减少很多输出。
除了当前阶段的错误外,可能无法避免任何输出信息
将slowms=threshold
附加到配置文件可以进一步减少正常的日志输出
threshold
是整数值(毫秒)。这意味着如果一个操作持续时间不超过此值,则不会输出正常的日志信息。默认值为100。
此外,如果实例正在运行,您可以通过其他方式更改此值。
var slowms = theValueYouWant;
var level = db.getProfilingStatus().was;
db.setProfilingLevel(level, slowms);