共计 916 个字符,预计需要花费 3 分钟才能阅读完成。
自动写代码机器人,免费开通
mongodb 中怎么切割系统日志,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面丸趣 TV 小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
在做 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: 其它命令执行完成后,执行这个里面的命令
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注丸趣 TV 行业资讯频道,感谢您对丸趣 TV 的支持。
向 AI 问一下细节