MongoDB 在 Ubuntu 的日志管理
一 配置文件与日志路径
systemLog:
destination: file
logAppend: true
path: /var/log/mongodb/mongod.log
verbosity: 1
sudo systemctl restart mongod
以上路径、参数与重启方式适用于 Ubuntu 上的常见部署。二 日志轮转方案
/var/log/mongodb/mongod.log {
daily
rotate 7
compress
missingok
notifempty
sharedscripts
copytruncate
dateext
size 200M
postrotate
/bin/kill -SIGUSR1 $(cat /var/log/mongodb/mongod.lock 2>/dev/null) 2>/dev/null || true
endscript
}
/var/log/mongodb/mongod.log {
daily
rotate 7
compress
missingok
notifempty
create 0640 mongodb adm
postrotate
systemctl try-restart mongod >/dev/null 2>&1 || true
endscript
}
sudo logrotate -v -f /etc/logrotate.d/mongodb
以上两种方案与参数在 Ubuntu 上均被广泛采用,按业务对“是否中断”与“运维复杂度”的偏好选择其一。三 查看与分析日志
tail -f /var/log/mongodb/mongod.log
sudo pip3 install mtools
mlogfilter mongod.log --from "2025-11-19T00:00:00" --to "+1d" --slow 100 | tail -n 20
sudo cat /var/log/mongodb/mongod.log | jq '.msg'
以上命令覆盖日常排查、慢查询定位与日志内容解析的高频需求。四 常见问题与最佳实践