記得前幾天有個小伙伴要查看mongodb的日志,從而排查問題,可能總找不到日志放在何處,今天就系統說一下mongodb的日志系統。mongodb中主要有四種日志。分別是系統日志、Journal日志、oplog主從日志、慢查詢日志等。這些 日志記錄著Mongodb數據庫不同方便的蹤跡。下面分別介紹這四種日志:
系統日志在Mongdb數據中很中重要,它記錄mongodb啟動和停止的操作,以及服務器在運行過程中發生的任何異常信息;配置系統日志也非常簡單,在運行mongod時候增加一個參數logpath,就可以設置;
例如:mongod -logpath='/data/db/log/server.log' -logappend.
Jouranl日志通過預寫入的redo日志為mongodb增加了額外的可靠性保障。開啟該功能時候,數據的更新就先寫入Journal日志,定期集中提交(目前是每100ms提交一次) ,然后在正式數據執行更改。啟動數據庫的Journal功能非常簡單,只需在mongod后面指定journal參數即可;
開啟方式:mongod -journal
Mongodb的高可用復制策略有一個叫做Replica Sets.ReplicaSet復制過程中有一個服務器充當主服務器,而一個或多個充當從服務器,主服務將更新寫入一個本地的collection中,這個collection記錄著發生在主服務器的更新操作。并將這些操作分發到從服務器上。這個日志是Capped Collection。利用如下命令可以配置
慢查詢記錄了執行時間超過了所設定時間閥值的操作語句。慢查詢日志對于發現性能有問題的語句很有幫助,建議開啟此功能并經常分析該日志的內容。
要配置這個功能只需要在mongod啟動時候設置profile參數即可。例如想要將超過5s的操作都記錄,可以使用如下語句:
mongod --profile=1 --slowms=5
新聞熱點
疑難解答