MongoDB在Linux上的日志管理主要涉及配置、輪轉、查看及分析等操作,具體如下:
配置日志路徑與級別
/etc/mongod.conf
,設置 systemLog.path
指定日志文件路徑(如 /var/log/mongodb/mongod.log
),verbosity
控制日志詳細程度(0-5,0為默認)。systemLog.destination: syslog
。日志輪轉管理
kill -SIGUSR1 <mongod_pid>
發送信號觸發日志輪轉,或使用 db.adminCommand({ logRotate: 1 })
命令。logrotate
工具,創建配置文件 /etc/logrotate.d/mongodb
,設置輪轉頻率(如每日)、保留天數、壓縮等參數,示例配置:/var/log/mongodb/mongod.log {
daily
rotate 7
compress
delaycompress
missingok
notifempty
create 640 mongodb mongodb
postrotate
/bin/kill -USR1 $(cat /var/run/mongodb/mongod.pid 2>/dev/null) 2>/dev/null || true
endscript
}
```。
查看與分析日志
tail -f /var/log/mongodb/mongod.log
跟蹤最新日志。grep "ERROR" /var/log/mongodb/mongod.log
篩選錯誤信息。mtools
(如 mloginfo
、mplotqueries
)進行日志統計和可視化,或用 jq
處理JSON格式日志。日志清理與安全
logrotate
的 maxsize
和 rotate
參數控制,或編寫腳本刪除舊文件。chmod 640 /var/log/mongodb/mongod.log
。參考來源: