可根據rs.status() 查詢集群服務器狀態.
字段解釋:
- self 這個信息出現在執行rs.status()函數的成員信息中
- stateStr用戶描述服務器狀態的字符串。有SECONDARY,PRIMARY,RECOVERING等
- uptime 從成員可到達一直到現在經歷的時間,單位是秒。
- optimeDate 每個成員oplog最后一次操作發生的時間,這個時間是心跳報上來的,因此可能會存在延遲
- lastHeartbeat 當前服務器最后一次收到其他成員心跳的時間,如果網絡故障等可能這個時間會大於2秒
- pinMs 心跳從當前服務器達到某個成員所花費的平均時間
- errmsg 成員在心跳請求中返回的狀態信息,通過是一些狀態信息,不全是錯誤信息。
state和stateStr是重復的,都表示成員狀態,只是state是內部的叫法。
health 為1表示server正常,0表示server宕.
health 為1表示server正常,0表示server宕.
state 為1表明Primary,2表明secondary,3表示Recovering,7表示Arbiter,8表示Down.
optime與optimeDate表達的信息也是一樣的,只是表示的方式不同,一個是用新紀元開始的毫秒數表示的,一個是用一種更容易閱讀的方式表示。
syncingTo表示當前服務器從哪個節點在做同步。
由於rs.status()是從執行命令成員本身的角度得出的,由於網路等故障,這份報告可能不准確或者有些過時。
optime與optimeDate表達的信息也是一樣的,只是表示的方式不同,一個是用新紀元開始的毫秒數表示的,一個是用一種更容易閱讀的方式表示。
syncingTo表示當前服務器從哪個節點在做同步。
由於rs.status()是從執行命令成員本身的角度得出的,由於網路等故障,這份報告可能不准確或者有些過時。