MongoDB 日誌切割三種方式

MongoDB 日誌切割

​ MongoDB 默認是不會進行切割日誌的,除非咱們配置了 logRotate = rename,而且重啓 MongoDB 服務,纔會進行切割日誌的,那麼爲了不實際中咱們一個日誌文件過大,咱們須要對日誌進行切割,有兩個辦法:linux

1. 經過 MongoDB 管理命令進行切割

使用該命令時須要在 MongoDB 運行時指定日誌文件路徑。--logpath [file] ,或者在配置文件中指定。mongodb

use admin
db.runCommand({logRotate:1})

2. 經過 Linux 系統自帶的服務 logrotate 進行切割

首先咱們須要配置 MongoDB 參數 logRotate = reopen, logappend = true,而後經過 Linux 系統自帶的 logrotate。配置文件放置在 /etc/logrotate.d/, 切割配置文件示例:shell

/opt/mongodb/log/mongodb.log {
rotate 180  
daily
size 100M
olddir /opt/mongodb/log/oldlog
copytruncate
dateext
compress
notifempty
missingok
}

3. 經過向進程發送 SIGUSR1 信號來切割日誌

若是咱們的進程 id 是19555,那麼咱們能夠經過如下命令來切割日誌的。只要咱們執行了該命令,日誌就會當即進行切割。bash

kill -SIGUSR1   19555
相關文章
相關標籤/搜索