mongodb日志文件切割

MongoDB 默认是不会进行切割日志的,除非我们配置了 logRotate = rename,并且重启 MongoDB 服务,才会进行切割日志的,
那么为了避免实际中我们一个日志文件过大,我们需要对日志进行切割,有两个办法

方法1:
use admin
db.auth("sa","123456");
db.runCommand({logRotate:1})

方法2:
在此情况下我们可以借用系统的logrotate日志自动切割服务,
来改变mongos.log文件的大小,进入到cd /etc/logrotate.d/目录,创建一个文件:touch mongos,编辑添加如下内容:

/home/middle/mongodb/log/mongodb.log {
    rotate 1
    daily
    dateext
    size 2M
    postrotate
        /bin/kill -SIGUSR1 `cat /home/middle/mongodb/run/28001.pid 2> /dev/null` 2> /dev/null || true
    endscript
}

正对以上配置的简单说明:
size:指定当mongos.log文件超过2M时,自动切割文件
dateext:指定切割文件时,备份文件的命名方式
rotate 5:一次将存储5个归档日志。对于第六个归档,时间最久的归档将被删除。
daily:日志文件将按天轮询
postrotate/endscript: 其它命令执行完成后,执行这个里面的命令

 

该配置需要在mongodb的配置文件设置如下参数:

logappend=true
logRotate=reopen

 

 

-- The End --

posted @   slnngk  阅读(835)  评论(0编辑  收藏  举报
编辑推荐:
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
阅读排行:
· DeepSeek “源神”启动!「GitHub 热点速览」
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 我与微信审核的“相爱相杀”看个人小程序副业
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· spring官宣接入deepseek,真的太香了~
点击右上角即可分享
微信分享提示