MongoDB在Ubuntu上的日志管理主要包括配置、輪轉、查看及分析等操作,具體如下:
配置日志路徑與級別
編輯配置文件 /etc/mongod.conf
,設置 systemLog
參數:
systemLog:
destination: file # 日志輸出到文件
path: /var/log/mongodb/mongod.log # 日志文件路徑
logAppend: true # 追加日志而非覆蓋
logLevel: 2 # 日志級別(0-5,2為警告級別)
保存后重啟服務:sudo systemctl restart mongod
。
日志輪轉管理
使用 logrotate
工具避免日志文件過大:
/etc/logrotate.d/mongodb
,內容示例:/var/log/mongodb/mongod.log {
daily # 每日輪轉
rotate 7 # 保留7天日志
compress # 壓縮舊日志
missingok # 忽略丟失文件
notifempty # 空文件不輪轉
create 0640 mongodb mongodb # 新日志權限與屬主
postrotate
if [ -f /var/run/mongodb.pid ]; then
kill -SIGUSR1 $(cat /var/run/mongodb.pid) # 通知MongoDB重新打開日志
fi
endscript
}
sudo logrotate -d /etc/logrotate.d/mongodb
。查看與分析日志
tail -f /var/log/mongodb/mongod.log
。grep
搜索關鍵字(如錯誤信息),或用 awk
提取字段。權限與安全
確保日志文件權限正確:
sudo chown mongodb:mongodb /var/log/mongodb/mongod.log
sudo chmod 0640 /var/log/mongodb/mongod.log
說明:Ubuntu默認使用 systemd-journald
管理日志,但上述方法通過配置文件和工具實現更靈活的日志管理,適用于生產環境。