Mongoのドキュメントでは、次のことができると言っています。
- -SIGUSR1シグナルを使用して、古いログの名前を変更し、現在のスイッチを切り替えます
- OSからlogrotateを使用する
OSの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に。
そしてmongodb.log.2013-09-18T23-49-44
、SIGUSR1切り替えのトレースのように、logrotateから適切な名前のログファイルと空のログファイルを取得します。後者を取り除く方法は?