技術小甜 2017-11-04 16:17:00 瀏覽543python
MongoDB 日誌切換(Rotate Log Files)實戰mongodb
1. 在mongo shell下,執行logRotate命令: shell
1工具 2post |
|
須要在mongos,mongod,config server運行。spa
該方式的變種:unix
a) 在unix shell下運行: 日誌
1 |
|
b) Bash腳本:
1 2 3 4 5 6 7 8 9 |
|
c) 將以下腳本保存到logRotate.js文件:
1 |
|
建立腳本logRotate.sh:
1 2 3 4 5 |
|
d) logRotate.sh //寫到計劃任務crontab便可(須要expect軟件包)
1 2 3 4 5 6 7 |
|
2. 使用SIGUSR1信號:
1 2 |
|
該方法的變種:
a) 用python寫的定時腳本,天天產生一個新的log,超過7天的log自行刪除。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
|
在root下crontab –e編輯定時任務
1 |
|
3. 日誌管理工具logrotate
自動化的最好方式是使用logrotate,其中copytruncate參數能更好工做。
拷貝如下代碼到/etc/logrotate.d/mongodb文件中,確保腳本中的路徑和文件名正確。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
|
4. Mongodb bug
mongodb穩定性差強人意。在切換過程當中也會致使mongodb進程終止。
具體內容能夠查看下mongodb bug系統:SERVER-4739、SERVER-3339。