#切除本身日志内容并且自动生成新的以日期生成的历史文件
方法一:
mongod -v --logpath /var/log/MongoDB/mongos.log
方法二:
kill -SIGUSR1 {pid}
方法三:
use admin
db.runCommand("logRotate")
#两种删除旧的日志文件,保留7天的日志文件
find /var/log/mongodb/mongos.log.* -mtime +7 -exec rm -rf {} \;
find /var/log/mongodb/mongos.log.* -mtime +7 -delete
方法四:
vim /etc/logrotate.d/mongodb
/mongod/config.log {
daily #每天
rotate 7 #轮转7天
compress #通过gzip压缩
missingok #如果日志不存在则忽略该警告
notifempty #如果是空文件则不转存
sharedscripts #只为整个日志组运行一次的脚本
copytruncate #用于还在打开中的日志文件,把当前日志备份并截断
dateext #使用日期作为命名格式
size 200M #当日志文件达到指定大小时就转存,可以指定K,M
postrotate
/bin/kill -SIGUSR1 'cat /mongod/mongod.lock 2>/dev/null' 2> /dev/null || true
endscript #结束脚本
}
#立即使上面的语句生效
logrotate mongodb
#脚本实现自动切割日志
vim /root/cut_mongodb_log.sh
#!/bin/bash
datafile=/mongodb/mongodb_data
logfile=/mongodb/mongodb_log
days=7
/bin/kill -SIGUSR1 'cat $datafile/mongod.lock'
find $logfile/ -mtime +$days -delete
chmod +x /root/cut_mongodb_log.sh
vim /etc/crontab
0 0 * * * /root/cut_mongodb_log.sh
service crond restart
chkconfig crond on
文章题目:Mongodb日志管理
URL地址:
http://bzwzjz.com/article/igpoeg.html