MongoDB - mongo.log 文件和日志文件之间的区别

MongoDB - difference between mongo.log files and journal log files

在使用 mongo 时,我的 /var/log/mongodb 目录下有巨大的日志文件(几个 G)。 示例:

root@redis-frankfurt-production:/var/log/mongodb# ls -ltrh /var/log/mongodb/mongod.log*
-rw-r--r-- 1 root root 9.2G Aug 29 06:10 /var/log/mongodb/mongod.log.2016-08-29T10-29-04
-rw-r--r-- 1 root root 2.5G Aug 29 10:01 /var/log/mongodb/mongod.log.2016-08-29T14-03-30

此外,还有日记日志:

root@redis-frankfurt-production:/var/log/mongodb# ls -ltrh /var/log/mongodb/journal/
total 301M
-rw-r--r-- 1 mongodb mongodb 101M Jun 17 13:10 WiredTigerPreplog.0000000002
-rw-r--r-- 1 mongodb mongodb 101M Jun 17 13:10 WiredTigerPreplog.0000000001
-rw-r--r-- 1 mongodb mongodb 101M Jun 17 13:10 WiredTigerLog.0000000001

据我了解,日志用于在内存级别之间进行同步。 /var/log/mongodb/mongod.log.* 下的日志是纯日志数据。 据我所知,日志的日期没有随时间变化(最后修改日期)。

这是我的问题: 是否可以删除旧的 /var/log/mongodb/mongod.log.*(不触及日志日志)?

谢谢!

关于日志文件的信息很少。 https://docs.mongodb.com/manual/core/journaling/

  1. WiredTiger 自动删除旧日志文件以仅保留从上一个检查点恢复所需的文件。
  2. 一旦文件大小限制达到 100MB,它会自动创建一个新的日志文件。

LOGROTATE :- 关于删除 mongo 日志文件,是的,您可以随时删除它们,但要确保有一个新文件,其中包含与旧 mongo 日志文件相同的用户权限和相同的用户组。

要维护日志文件,请使用 logrotate dameon 进程,它会自动为您处理。 它可以压缩以前的日志文件,压缩它们,也可以邮寄它们,并且可以删除超过一定年龄的文件。 http://www.linuxcommand.org/man_pages/logrotate8.html

   "/var/log/httpd/access.log" /var/log/httpd/error.log {
       rotate 5
       mail www@my.org
       size=100k
       sharedscripts
       postrotate
                                 /sbin/killall -HUP httpd
       endscript
   }

你可以在logrotate中检查输入的所有参数,在上面提到的link。