前言
其實(shí)所謂自動(dòng)分割MongoDB日志文件,就是指Rotate MongoDB log files,即讓MongoDB每天(或每個(gè)星期,可自定義控制)生成一個(gè)日志文件,而不是將MongoDB所有的運(yùn)行日志都放置在一個(gè)文件中,這樣每個(gè)日志文件都相對(duì)較小,定位問題也更容易。
實(shí)現(xiàn)自動(dòng)分割MongoDB日志的方法可以參考:https://docs.mongodb.com/manual/tutorial/rotate-log-files/
現(xiàn)在以一個(gè)MongoDB實(shí)例為例,可以寫一個(gè)腳本來實(shí)現(xiàn)自動(dòng)分割MongoDB日志
1、配置MongoDB實(shí)例啟動(dòng)參數(shù)
security: keyFile: /usr/local/mongodb/authentication/keyFile sharding: clusterRole: shardsvr replication: replSetName: rs3 net: port: 27023 storage: dbPath: /data/db_delay_rs3 systemLog: path: /data/log_delay_rs3/mongodb.log destination: file logAppend: true logRotate: rename processManagement: fork: true
配置MongoDB系統(tǒng)日志保存路徑,并配置logRotate
參數(shù)為rename
2、編寫自動(dòng)分割MongoDB日志腳本
#!/bin/bash #Rotate the MongoDB logs to prevent a single logfile from consuming too much disk space. app=mongod mongodPath=/usr/local/mongodb/bin/ pidArray=$(pidof $mongodPath/$app) for pid in $pidArray;do if [ $pid ] then kill -SIGUSR1 $pid fi done exit
:wq
保存,并命名為logRotate.sh
,保存到目錄/data/logRotate/
3、設(shè)置Linux定時(shí)任務(wù)
vi /etc/crontab
在打開的文件底部添加如下內(nèi)容
59 23 * * * root /data/logRotate/logRotate.sh
:wq
保存,表示配置一個(gè)定時(shí)任務(wù),定時(shí)每天23:59以root身份執(zhí)行腳本/data/logRotate/logRotate.sh
,實(shí)現(xiàn)定時(shí)自動(dòng)分割MongoDB日志
至此,就實(shí)現(xiàn)了自動(dòng)分割MongoDB日志,MongoDB每天都會(huì)生成一個(gè)新的日志文件,日志文件的命名帶有標(biāo)識(shí)文件日期的時(shí)間戳。
如下所示:
mongodb.log mongodb.log.2016-12-08T15-59-01 mongodb.log.2016-12-13T15-59-01 mongodb.log.2016-12-06T07-14-10 mongodb.log.2016-12-09T15-59-01 mongodb.log.2016-12-14T15-59-01 mongodb.log.2016-12-06T15-59-01 mongodb.log.2016-12-10T15-59-01 mongodb.log.2016-12-15T15-59-01 mongodb.log.2016-12-07T01-54-05 mongodb.log.2016-12-11T15-59-01 mongodb.log.2016-12-16T15-59-01 mongodb.log.2016-12-07T15-59-01 mongodb.log.2016-12-12T15-59-01
總結(jié)
以上就是關(guān)于MongoDB運(yùn)行日志自動(dòng)分割的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流。
標(biāo)簽:玉林 廈門 雞西 興安盟 泰安 遼陽 無錫 自貢
巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《MongoDB運(yùn)行日志實(shí)現(xiàn)自動(dòng)分割的方法實(shí)例》,本文關(guān)鍵詞 MongoDB,運(yùn)行,日志,實(shí)現(xiàn),自動(dòng),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。