在CentOS上配置MongoDB日志管理步骤如下:
修改配置文件
编辑 /etc/mongod.conf,在 systemLog 部分设置日志路径、级别等参数:
systemLog:
destination: file
logAppend: true
path: /var/log/mongodb/mongod.log # 日志路径,可自定义
verbosity: 1 # 日志级别(0-5,1为默认,记录错误、警告和信息)
保存后重启服务生效:
sudo systemctl restart mongod
配置日志轮转
使用 logrotate 工具管理日志分割和清理,创建 /etc/logrotate.d/mongodb 文件:
sudo nano /etc/logrotate.d/mongodb
添加以下内容(示例为每天轮转,保留7天,压缩旧日志):
/var/log/mongodb/mongod.log {
daily
rotate 7
compress
missingok
notifempty
copytruncate # 避免重启服务
postrotate
/bin/kill -SIGUSR1 $(cat /var/lib/mongo/mongod.lock) # 通知MongoDB重新打开日志文件
endscript
}
确保 logrotate 已安装:
sudo yum install logrotate
实时监控日志
使用 tail 命令查看实时日志:
tail -f /var/log/mongodb/mongod.log
可选:集中日志管理
部署 Graylog 等工具实现日志聚合分析(需额外安装配置)。
说明:
0 仅记录错误,1 记录错误和警告,2 记录详细信息(推荐生产环境使用 1 或 2)。logrotate 的 copytruncate 参数可避免重启服务,适合生产环境。