MongoDB配置按天存储日志文件 - Go语言中文社区

MongoDB配置按天存储日志文件


mongodb默认不提供直接按天来输出日志文件的配置,但是提供一个日志清理的命令:logRotate。如果日志不及时清理会导致mongo访问越来越慢,甚至卡死。


要使用logRotate命令需要进入到mongo shell,然后执行:

use admin

#db.auth('username','password');

db.runCommand({logRotate:1});

必须要进到admin库中才生效,如果配置auth需要填写用户名和密码

执行完毕后会在logpath目录中生成一个当前时间节点的备份文件,并且原来的日志文件内容会被清除掉。


具体的logRotate的介绍见:http://docs.mongodb.org/manual/tutorial/rotate-log-files/

在生产环境上不可能每天定时由人工来执行日志文件清理,所以可以写一个脚本,由crontab定时在每天定时执行转储工作,具体脚本内容如下:

mongo 127.0.0.1:27021/admin --eval "db.auth('admin','admin@123');db.runCommand({logRotate:1});"
mongo 127.0.0.1:27022/admin --eval "db.auth('admin','admin@123');db.runCommand({logRotate:1});"
mongo 127.0.0.1:27023/admin --eval "db.auth('admin','admin@123');db.runCommand({logRotate:1});"

......

其中需要配置IP和端口,如果开启auth,需要填写访问admin库的用户名和密码


crontab的配置如下:

05 00 * * * root /usr/soft/mongodb/logrotate.sh >> logrotate.log

参考:http://www.16boke.com/article/detail/104
版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/u010499087/article/details/78652114
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2019-09-13 19:58:11
  • 阅读 ( 1983 )
  • 分类:数据库

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢