在做mongodb分片时,当启用mongos路由服务,我们会指定一个日志的存放位置:
mongos --configdb 127.0.0.1:27019 --logpath /var/log/mongodb/mongos.log --pidfilepath /var/run/mongodb/mongos.pid --logappend --logRotate reopen --fork
以上我们指定了日志的存放位置在/var/log/mongodb/mongos.log文件里面,当系统数据量比较大,运行时间久了之后,mongos.log文件会变成几个G的大小,这样肯定会影响mongos路由的性能。
在此情况下我们可以借用系统的logrotate日志自动切割服务,来改变mongos.log文件的大小,进入到cd /etc/logrotate.d/目录,创建一个文件:touch mongos,编辑添加如下内容:
/var/log/mongodb/mongos.log{ rotate 1 daily dateext size 200M postrotate /bin/kill -SIGUSR1 `cat /var/run/mongodb/mongos.pid 2> /dev/null` 2> /dev/null || true endscript }
正对以上配置的简单说明:
size:指定当mongos.log文件超过200M时,自动切割文件
dateext:指定切割文件时,备份文件的命名方式
rotate 5:一次将存储5个归档日志。对于第六个归档,时间最久的归档将被删除。
daily:日志文件将按天轮询
postrotate/endscript: 其它命令执行完成后,执行这个里面的命令
时间: 2024-10-30 23:31:55