Mongo 文档说我可以:
- 使用-SIGUSR1信号并重命名旧日志并进行当前切换
- 从OS使用logrotate
我希望操作系统具有logrotate功能,以压缩旧文件并删除最旧的文件,但是除了发送SIGUSR1之外,没有其他办法告诉mongod进程切换当前日志。
所以我写了
/var/log/mongodb/*.log {
daily
rotate 5
compress
dateext
missingok
notifempty
sharedscripts
postrotate
/usr/bin/killall -SIGUSR1 mongod
/usr/bin/killall -SIGUSR1 mongos
endscript
}
到/etc/logrotate.d/mongo。
现在,可以从logrotate和空的日志文件中获取命名良好的日志文件,例如mongodb.log.2013-09-18T23-49-44
SIGUSR1切换的痕迹。如何摆脱后者?