Heim  >  Artikel  >  Datenbank  >  MongoDB 日志切换

MongoDB 日志切换

WBOY
WBOYOriginal
2016-06-07 16:37:121003Durchsuche

MongoDB默认情况下不会自动的切换轮转日志的,这将会导致日志日渐增大,在繁忙的业务下,日志增长量非常大的。如此之大的日志文件,查看某天的日志也不太方便。如是,需要对mongodb 日志文件进行切换,保留7天。 SIGUSR1 方法 # kill -SIGUSR1 # find /data/

MongoDB默认情况下不会自动的切换轮转日志的,这将会导致日志日渐增大,在繁忙的业务下,日志增长量非常大的。如此之大的日志文件,查看某天的日志也不太方便。如是,需要对mongodb 日志文件进行切换,保留7天。

SIGUSR1 方法

# kill -SIGUSR1 
# find /data/mongodb_data/log/mongodb.log.* -mtime +7 -delete
该方法只能在Linux系统下进行。

mongo logRotate 命令方法

use admin
db.runCommand( { logRotate : 1 } )
需要在mongos,mongod,config server运行。 该方法是Windows系统下的唯一方法。

Syslog Log Rotation

# vi /etc/logrotate.d/mongodb 
/opt/mongodb/log/mongodb.log {
    daily
    rotate 7
    compress
    dateext
    missingok
    notifempty
    sharedscripts
    copytruncate
    postrotate
        /bin/kill -SIGUSR1 `cat /data/mongodb_data/mongod.lock 2> /dev/null` 2> /dev/null || true
    endscript
}
# logrotate -f /etc/logrotate.d/mongodb
logrotate可参见《logrotate日志管理工具》。

mongodb bug

不过mongodb的稳定性差强人意。在日志轮转中也会导致mongodb进程终止的。 mongodb-log 具体内容可以查看下mongodb bug系统。
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn