定義
replSetGetStatusreplSetGetStatusコマンドは、コマンドを処理したサーバーの観点からレプリカセットのステータスを返します。replSetGetStatusは、管理データベースで実行する必要があります。mongodreplSetGetStatusが正常に返すには、 インスタンスがレプリカセットメンバーである必要があります。このコマンドは、他のレプリカセット ノードから送信されるハートビートからデータを取得します。ハートビートの頻度により、これらのデータは数秒古くなる可能性があります。
Tip
mongoshでは、このコマンドはrs.status()ヘルパーメソッドを通じて実行することもできます。ヘルパー メソッドは
mongoshユーザーには便利ですが、データベースコマンドと同じレベルの情報は返されない可能性があります。便宜上必要ない場合、または追加の戻りフィールドが必要な場合は、データベースコマンド を使用します。
互換性
このコマンドは、次の環境でホストされている配置で使用できます。
- MongoDB Atlas はクラウドでの MongoDB 配置のための完全管理サービスです
重要
このコマンドは、M0 および Flex クラスターではサポートされていません。詳細については、サポートされていないコマンド を参照してください。
MongoDB Enterprise: サブスクリプションベースの自己管理型 MongoDB バージョン
MongoDB Community: ソースが利用可能で、無料で使用できる自己管理型の MongoDB のバージョン
構文
このコマンドの構文は、次のとおりです。
db.adminCommand( { replSetGetStatus: 1 } )
replSetGetStatus状態で最初の同期中にノードでrs.status() またはmongosh STARTUP2ヘルパー を実行すると、コマンドはreplSetGetStatus.initialSyncStatus メトリクスを返します。
メンバーが最初の同期を完了して別の状態に移行すると、replSetGetStatus.initialSyncStatus メトリクスは使用できなくなります。
注意
レプリカセットがまだinitializedされていない場合、 replSetGetStatusコマンドは次のエラーを返します。
MongoServerError: no replset config has been received
replSetInitiateコマンドを実行してもう一度お試しください。
例
次の例では、レプリカセットプライマリの管理データベースでreplSetGetStatus コマンドを実行します。
db.adminCommand( { replSetGetStatus: 1 } )
このコマンドは、レプリカセット プライマリの例に対して次の出力を返します。
{ "set" : "replset", "date" : ISODate("2024-08-15T23:06:13.978Z"), "myState" : 1, "term" : Long(3), "syncSourceHost" : "", "syncSourceId" : -1, "heartbeatIntervalMillis" : Long(2000), "majorityVoteCount" : 2, "writeMajorityCount" : 2, "votingMembersCount" : 3, "writableVotingMembersCount" : 3, "optimes" : { "lastCommittedOpTime" : { "ts" : Timestamp(1723763173, 1), "t" : Long(3) }, "lastCommittedWallTime" : ISODate("2024-08-15T23:06:13.978Z"), "readConcernMajorityOpTime" : { "ts" : Timestamp(1723763173, 1), "t" : Long(3) }, "appliedOpTime" : { "ts" : Timestamp(1723763173, 1), "t" : Long(3) }, "writtenOpTime" : { "ts" : Timestamp(1723763173, 1), "t" : Long(3) }, "durableOpTime" : { "ts" : Timestamp(1723763173, 1), "t" : Long(3) }, "lastAppliedWallTime" : ISODate("2024-08-15T23:06:13.978Z"), "lastWrittenWallTime" : ISODate("2024-08-15T23:06:13.978Z"), "lastDurableWallTime" : ISODate("2024-08-15T23:06:13.978Z") }, "lastStableRecoveryTimestamp" : Timestamp(1723763173, 1), "electionCandidateMetrics" : { "lastElectionReason" : "stepUpRequestSkipDryRun", "lastElectionDate" : ISODate("2024-08-15T23:06:13.978Z"), "electionTerm" : Long(3), "lastCommittedOpTimeAtElection" : { "ts" : Timestamp(1723763173, 1), "t" : Long(2) }, "lastSeenOpTimeAtElection" : { "ts" : Timestamp(1723763173, 1), "t" : Long(2) }, "lastSeenWrittenOpTimeAtElection" : { "ts" : Timestamp(1723763173, 1), "t" : Long(1) }, "numVotesNeeded" : 2, "priorityAtElection" : 1, "electionTimeoutMillis" : Long(10000), "priorPrimaryMemberId" : 1, "numCatchUpOps" : Long(0), "newTermStartDate" : ISODate("2024-08-15T23:06:13.978Z"), "wMajorityWriteAvailabilityDate" : ISODate("2024-08-15T23:06:13.978Z") }, "electionParticipantMetrics" : { "votedForCandidate" : true, "electionTerm" : Long(2), "lastVoteDate" : ISODate("2024-08-15T23:06:13.978Z"), "electionCandidateMemberId" : 1, "voteReason" : "", "lastAppliedOpTimeAtElection" : { "ts" : Timestamp(1723763173, 1), "t" : Long(1) }, "lastWrittenOpTimeAtElection" : { "ts" : Timestamp(1723763173, 1), "t" : Long(1) }, "maxAppliedOpTimeInSet" : { "ts" : Timestamp(1723763173, 1), "t" : Long(1) }, "priorityAtElection" : 1 }, "members" : [ { "_id" : 0, "name" : "m1.example.net:27017", "health" : 1, "state" : 1, "stateStr" : "PRIMARY", "uptime" : 269, "optime" : { "ts" : Timestamp(1723763173, 1), "t" : Long(3) }, "optimeWritten" : { "ts" : Timestamp(1723763173, 1), "t" : Long(3) }, "optimeDurable" : { "ts" : Timestamp(1723763173, 1), "t" : Long(3) }, "optimeDate" : ISODate("2024-08-15T23:06:13.978Z"), "optimeWrittenDate" : ISODate("2024-08-15T23:06:13.978Z"), "lastAppliedWallTime": ISODate("2024-08-15T23:06:13.978Z"), "lastWrittenWallTime": ISODate("2024-08-15T23:06:13.978Z"), "lastDurableWallTime": ISODate("2024-08-15T23:06:13.978Z"), "syncSourceHost" : "", "syncSourceId" : -1, "infoMessage" : "", "electionTime" : Timestamp(1723763173, 1), "electionDate" : ISODate("2024-08-15T23:06:13.978Z"), "configVersion" : 1, "configTerm" : 0, "self" : true, "lastHeartbeatMessage" : "" }, { "_id" : 1, "name" : "m2.example.net:27017", "health" : 1, "state" : 2, "stateStr" : "SECONDARY", "uptime" : 266, "optime" : { "ts" : Timestamp(1723763173, 1), "t" : Long(3) }, "optimeWritten" : { "ts" : Timestamp(1723763173, 1), "t" : Long(3) }, "optimeDurable" : { "ts" : Timestamp(1723763173, 1), "t" : Long(3) }, "optimeDate" : ISODate("2024-08-15T23:06:13.978Z"), "optimeWrittenDate" : ISODate("2024-08-15T23:06:13.978Z"), "optimeDurableDate" : ISODate("2024-08-15T23:06:13.978Z"), "lastAppliedWallTime": ISODate("2024-08-15T23:06:13.978Z"), "lastWrittenWallTime": ISODate("2024-08-15T23:06:13.978Z"), "lastDurableWallTime": ISODate("2024-08-15T23:06:13.978Z"), "lastHeartbeat" : ISODate("2024-08-15T23:06:13.978Z"), "lastHeartbeatRecv" : ISODate("2024-08-15T23:06:13.978Z"), "pingMs" : Long(0), "lastHeartbeatMessage" : "", "syncSourceHost" : "m3.example.net:27017", "syncSourceId" : 2, "infoMessage" : "", "configVersion" : 1 }, { "_id" : 2, "name" : "m3.example.net:27017", "health" : 1, "state" : 2, "stateStr" : "SECONDARY", "uptime" : 266, "optime" : { "ts" : Timestamp(1723763173, 1), "t" : Long(3) }, "optimeWritten" : { "ts" : Timestamp(1723763173, 1), "t" : Long(3) }, "optimeDurable" : { "ts" : Timestamp(1723763173, 1), "t" : Long(3) }, "optimeDate" : ISODate("2024-08-15T23:06:13.978Z"), "optimeWrittenDate" : ISODate("2024-08-15T23:06:13.978Z"), "optimeDurableDate" : ISODate("2024-08-15T23:06:13.978Z"), "lastAppliedWallTime": ISODate("2024-08-15T23:06:13.978Z"), "lastWrittenWallTime": ISODate("2024-08-15T23:06:13.978Z"), "lastDurableWallTime": ISODate("2024-08-15T23:06:13.978Z"), "lastHeartbeat" : ISODate("2024-08-15T23:06:13.978Z"), "lastHeartbeatRecv" : ISODate("2024-08-15T23:06:13.978Z"), "pingMs" : Long(0), "lastHeartbeatMessage" : "", "syncSourceHost" : "m1.example.net:27017", "syncSourceId" : 0, "infoMessage" : "", "configVersion" : 1 } ], "ok" : 1, "$clusterTime" : { "clusterTime" : Timestamp(1723763173, 1), "signature" : { "hash" : BinData(0,"9C2qcGVkipEGJW3iF90qxb/gIwc="), "keyId" : Long("6800589497806356482") } }, "operationTime" : Timestamp(1723763173, 1) }
次の例では、レプリカセットセカンダリの管理データベースでreplSetGetStatus コマンドを実行します。
db.adminCommand( { replSetGetStatus: 1 } )
このコマンドは、レプリカセット セカンダリの例に対して次の出力を返します。
{ "set" : "replset", "date" : ISODate("2024-08-15T23:06:13.978Z"), "myState" : 2, "term" : Long(3), "syncSourceHost" : "m3.example.net:27017", "syncSourceId" : 2, "heartbeatIntervalMillis" : Long(2000), "majorityVoteCount" : 2, "writeMajorityCount" : 2, "votingMembersCount" : 3, "writableVotingMembersCount" : 3, "optimes" : { "lastCommittedOpTime" : { "ts" : Timestamp(1723763173, 1), "t" : Long(3) }, "lastCommittedWallTime" : ISODate("2024-08-15T23:06:13.978Z"), "readConcernMajorityOpTime" : { "ts" : Timestamp(1723763173, 1), "t" : Long(3) }, "writtenOpTime" : { "ts" : Timestamp(1723763173, 1), "t" : Long(3) }, "appliedOpTime" : { "ts" : Timestamp(1723763173, 1), "t" : Long(3) }, "durableOpTime" : { "ts" : Timestamp(1723763173, 1), "t" : Long(3) }, "lastAppliedWallTime" : ISODate("2024-08-15T23:06:13.978Z"), "lastWrittenWallTime" : ISODate("2024-08-15T23:06:13.978Z"), "lastDurableWallTime" : ISODate("2024-08-15T23:06:13.978Z") }, "lastStableRecoveryTimestamp" : Timestamp(1723763173, 1), "electionParticipantMetrics" : { "votedForCandidate" : true, "electionTerm" : Long(3), "lastVoteDate" : ISODate("2024-08-15T23:06:13.978Z"), "electionCandidateMemberId" : 0, "voteReason" : "", "lastAppliedOpTimeAtElection" : { "ts" : Timestamp(1723763173, 1), "t" : Long(2) }, "lastWrittenOpTimeAtElection" : { "ts" : Timestamp(1723763173, 1), "t" : Long(1) }, "maxAppliedOpTimeInSet" : { "ts" : Timestamp(1723763173, 1), "t" : Long(2) }, "maxWrittenOpTimeInSet" : { "ts" : Timestamp(1723763173, 1), "t" : Long(1) }, "priorityAtElection" : 1, "newTermStartDate" : ISODate("2024-08-15T23:06:13.978Z"), "newTermAppliedDate" : ISODate("2024-08-15T23:06:13.978Z") }, "members" : [ { "_id" : 0, "name" : "m1.example.net:27017", "health" : 1, "state" : 1, "stateStr" : "PRIMARY", "uptime" : 407, "optime" : { "ts" : Timestamp(1723763173, 1), "t" : Long(3) }, "optimeWritten" : { "ts" : Timestamp(1723763173, 1), "t" : Long(3) }, "optimeDurable" : { "ts" : Timestamp(1723763173, 1), "t" : Long(3) }, "optimeDate" : ISODate("2024-08-15T23:06:13.978Z"), "optimeWrittenDate" : ISODate("2024-08-15T23:06:13.978Z"), "optimeDurableDate" : ISODate("2024-08-15T23:06:13.978Z"), "lastAppliedWallTime": ISODate("2024-08-15T23:06:13.978Z"), "lastWrittenWallTime": ISODate("2024-08-15T23:06:13.978Z"), "lastDurableWallTime": ISODate("2024-08-15T23:06:13.978Z"), "lastHeartbeat" : ISODate("2024-08-15T23:06:13.978Z"), "lastHeartbeatRecv" : ISODate("2024-08-15T23:06:13.978Z"), "pingMs" : Long(0), "lastHeartbeatMessage" : "", "syncSourceHost" : "", "syncSourceId" : -1, "infoMessage" : "", "electionTime" : Timestamp(1723763173, 1), "electionDate" : ISODate("2024-08-15T23:06:13.978Z"), "configVersion" : 1 }, { "_id" : 1, "name" : "m2.example.net:27017", "health" : 1, "state" : 2, "stateStr" : "SECONDARY", "uptime" : 409, "optime" : { "ts" : Timestamp(1723763173, 1), "t" : Long(3) }, "optimeWritten" : { "ts" : Timestamp(1723763173, 1), "t" : Long(3) }, "optimeDurable" : { "ts" : Timestamp(1723763173, 1), "t" : Long(3) }, "optimeDate" : ISODate("2024-08-15T23:06:13.978Z"), "optimeWrittenDate" : ISODate("2024-08-15T23:06:13.978Z"), "lastAppliedWallTime": ISODate("2024-08-15T23:06:13.978Z"), "lastWrittenWallTime": ISODate("2024-08-15T23:06:13.978Z"), "lastDurableWallTime": ISODate("2024-08-15T23:06:13.978Z"), "syncSourceHost" : "m3.example.net:27017", "syncSourceId" : 2, "infoMessage" : "", "configVersion" : 1, "configTerm" : 0, "self" : true, "lastHeartbeatMessage" : "" }, { "_id" : 2, "name" : "m3.example.net:27017", "health" : 1, "state" : 2, "stateStr" : "SECONDARY", "uptime" : 407, "optime" : { "ts" : Timestamp(1723763173, 1), "t" : Long(3) }, "optimeWritten" : { "ts" : Timestamp(1723763173, 1), "t" : Long(3) }, "optimeDurable" : { "ts" : Timestamp(1723763173, 1), "t" : Long(3) }, "optimeDate" : ISODate("2024-08-15T23:06:13.978Z"), "optimeWrittenDate" : ISODate("2024-08-15T23:06:13.978Z"), "optimeDurableDate" : ISODate("2024-08-15T23:06:13.978Z"), "lastAppliedWallTime": ISODate("2024-08-15T23:06:13.978Z"), "lastWrittenWallTime": ISODate("2024-08-15T23:06:13.978Z"), "lastDurableWallTime": ISODate("2024-08-15T23:06:13.978Z"), "lastHeartbeat" : ISODate("2024-08-15T23:06:13.978Z"), "lastHeartbeatRecv" : ISODate("2024-08-15T23:06:13.978Z"), "pingMs" : Long(0), "lastHeartbeatMessage" : "", "syncSourceHost" : "m1.example.net:27017", "syncSourceId" : 0, "infoMessage" : "", "configVersion" : 1 } ], "ok" : 1, "$clusterTime" : { "clusterTime" : Timestamp(1723763173, 1), "signature" : { "hash" : BinData(0,"kmhE5YARZlzn/DX4B/D0E5P6okY="), "keyId" : Long("6800589497806356482") } }, "operationTime" : Timestamp(1723763173, 1), }
- MongoDB 5.2以降、
- ファイルコピー ベースの最初の同期を使用する場合、
replSetGetStatus.initialSyncStatusドキュメントには追加のフィールドが含まれます。
replSetGetStatus最初の同期中にノードに対して を実行すると、コマンドはreplSetGetStatus.initialSyncStatus メトリクスを返します。
db.adminCommand( { replSetGetStatus: 1 } )
メンバーが最初の同期を完了して別の状態に移行すると、replSetGetStatus.initialSyncStatus メトリクスは使用できなくなります。
次の例では、replSetGetStatus 44最初の同期中に. レプリカセットノードの管理データベース上で コマンドを実行します。
{ "set" : "replset", "date" : ISODate("2024-08-15T23:06:13.978Z") "myState" : 5, "term" : Long(1), "syncSourceHost" : "m1.example.net:27017", "syncSourceId" : 0, "heartbeatIntervalMillis" : Long(2000), "majorityVoteCount" : 2, "writeMajorityCount" : 2, "votingMembersCount" : 2, "writableVotingMembersCount" : 2, "optimes" : { "lastCommittedOpTime" : { "ts" : Timestamp(0, 0), "t" : Long(-1) }, "lastCommittedWallTime" : ISODate("1970-01-01T00:00:00Z"), "appliedOpTime" : { "ts" : Timestamp(0, 0), "t" : Long(-1) }, "writtenOpTime": { "ts" : Timestamp(0, 0), "t" : Long(-1) }, "durableOpTime" : { "ts" : Timestamp(0, 0), "t" : Long(-1) }, "lastAppliedWallTime" : ISODate("1970-01-01T00:00:00Z"), "lastWrittenWallTime": ISODate("1970-01-01T00:00:00Z"), "lastDurableWallTime" : ISODate("1970-01-01T00:00:00Z") }, "lastStableRecoveryTimestamp" : Timestamp(0, 0), "initialSyncStatus" : { "failedInitialSyncAttempts" : 0, "maxFailedInitialSyncAttempts" : 10, "initialSyncStart" : ISODate("2024-08-15T23:06:13.978Z"), "initialSyncAttempts" : [ ], "appliedOps" : 0, "initialSyncOplogStart" : Timestamp(1723763173, 1), "syncSourceUnreachableSince" : ISODate("2024-08-15T23:06:13.978Z"), "currentOutageDurationMillis" : Long(8687), "totalTimeUnreachableMillis" : Long(8687), "databases" : { "databasesCloned" : 3, "admin" : { "collections" : 4, "clonedCollections" : 4, "start" : ISODate("2024-08-15T23:06:13.978Z"), "end" : ISODate("2024-08-15T23:06:13.978Z"), "elapsedMillis" : 429, "admin.system.roles" : { "documentsToCopy" : 22, "documentsCopied" : 22, "indexes" : 2, "fetchedBatches" : 1, "start" : ISODate("2024-08-15T23:06:13.978Z"), "end" : ISODate("2024-08-15T23:06:13.978Z"), "elapsedMillis" : 138, "receivedBatches" : 1 }, "admin.system.users" : { "documentsToCopy" : 32, "documentsCopied" : 32, "indexes" : 2, "fetchedBatches" : 1, "start" : ISODate("2024-08-15T23:06:13.978Z"), "end" : ISODate("2024-08-15T23:06:13.978Z"), "elapsedMillis" : 149, "receivedBatches" : 1 }, "admin.system.keys" : { "documentsToCopy" : 2, "documentsCopied" : 2, "indexes" : 1, "fetchedBatches" : 1, "start" : ISODate("2024-08-15T23:06:13.978Z"), "end" : ISODate("2024-08-15T23:06:13.978Z"), "elapsedMillis" : 76, "receivedBatches" : 1 }, "admin.system.version" : { "documentsToCopy" : 2, "documentsCopied" : 2, "indexes" : 1, "fetchedBatches" : 1, "start" : ISODate("2024-08-15T23:06:13.978Z"), "end" : ISODate("2024-08-15T23:06:13.978Z"), "elapsedMillis" : 66, "receivedBatches" : 1 } }, "config" : { "collections" : 2, "clonedCollections" : 2, "start" : ISODate("2024-08-15T23:06:13.978Z"), "end" : ISODate("2024-08-15T23:06:13.978Z"), "elapsedMillis" : 198, "config.transactions" : { "documentsToCopy" : 0, "documentsCopied" : 0, "indexes" : 1, "fetchedBatches" : 0, "start" : ISODate("2024-08-15T23:06:13.978Z"), "end" : ISODate("2024-08-15T23:06:13.978Z"), "elapsedMillis" : 74, "receivedBatches" : 0 }, "config.system.sessions" : { "documentsToCopy" : 0, "documentsCopied" : 0, "indexes" : 2, "fetchedBatches" : 0, "start" : ISODate("2024-08-15T23:06:13.978Z"), "end" : ISODate("2024-08-15T23:06:13.978Z"), "elapsedMillis" : 124, "receivedBatches" : 0 } }, "test" : { "collections" : 1, "clonedCollections" : 1, "start" : ISODate("2024-08-15T23:06:13.978Z"), "end" : ISODate("2024-08-15T23:06:13.978Z"), "elapsedMillis" : 47967, "test.hugeindex" : { "documentsToCopy" : 25000, "documentsCopied" : 25000, "indexes" : 2, "fetchedBatches" : 21, "start" : ISODate("2024-08-15T23:06:13.978Z"), "end" : ISODate("2024-08-15T23:06:13.978Z"), "elapsedMillis" : 47967, "receivedBatches" : 21 } } } }, "members" : [ { "_id" : 0, "name" : "m1.example.net:27017", "health" : 0, "state" : 8, "stateStr" : "(not reachable/healthy)", "uptime" : 0, "optime" : { "ts" : Timestamp(0, 0), "t" : Long(-1) }, "optimeWritten" : { "ts" : Timestamp(0, 0), "t" : Long(-1) }, "optimeDurable" : { "ts" : Timestamp(0, 0), "t" : Long(-1) }, "optimeDate" : ISODate("1970-01-01T00:00:00Z"), "optimeWrittenDate" : ISODate("1970-01-01T00:00:00Z"), "optimeDurableDate" : ISODate("1970-01-01T00:00:00Z"), "lastAppliedWallTime": ISODate("1970-01-01T00:00:00Z"), "lastWrittenWallTime": ISODate("1970-01-01T00:00:00Z"), "lastDurableWallTime": ISODate("1970-01-01T00:00:00Z""), "lastHeartbeat" : ISODate("2024-08-15T23:06:13.978Z"), "lastHeartbeatRecv" : ISODate("2024-08-15T23:06:13.978Z"), "pingMs" : Long(0), "lastHeartbeatMessage" : "Error connecting to m1.example.net:27017 (127.0.0.1:27018) :: caused by :: Connection refused", "syncSourceHost" : "", "syncSourceId" : -1, "infoMessage" : "", "configVersion" : 2 }, { "_id" : 1, "name" : "m2.example.net:27017", "health" : 1, "state" : 5, "stateStr" : "STARTUP2", "uptime" : 5297, "optime" : { "ts" : Timestamp(0, 0), "t" : Long(-1) }, "optimeWritten" : { "ts" : Timestamp(0, 0), "t" : Long(-1) }, "optimeDurable" : { "ts" : Timestamp(0, 0), "t" : Long(-1) }, "optimeDate" : ISODate("1970-01-01T00:00:00Z"), "optimeWrittenDate" : ISODate("1970-01-01T00:00:00Z"), "lastAppliedWallTime": ISODate("1970-01-01T00:00:00Z"), "lastWrittenWallTime": ISODate("2020-03-05T05:24:38Z"), "lastDurableWallTime": ISODate("1970-01-01T00:00:00Z"), "syncSourceHost" : "m1.example.net:27017", "syncSourceId" : 0, "infoMessage" : "", "configVersion" : 2, "configTerm" : 1, "self" : true, "lastHeartbeatMessage" : "" } ], "ok" : 1 }
出力
replSetGetStatus コマンドは、以下のフィールドを持つドキュメントを返します。
replSetGetStatus.setset値は、replSetName設定で構成されたレプリカセットの名前です。これはrs.conf()の_idと同じ値です。
replSetGetStatus.datereplSetGetStatus コマンドを処理したサーバーを基準とする現在時刻を含むISODate形式の日付と時刻。このサーバーとレプリカセットの他のノードの間の動作レイテンシを把握するには、この値を
replSetGetStatus.members[n].lastHeartbeatの値と比較します。
replSetGetStatus.myState現在のノードのレプリカ状態を表す
0から10までの整数。
replSetGetStatus.termこのレプリカセットノードに認識される、レプリカセットの選挙回数。
termは、正確性を確保するために分散コンシステントアルゴリズムによって使用されます。
replSetGetStatus.syncSourceHostsyncSourceHostフィールドには、このインスタンスが同期するノードのホスト名が保持されます。このインスタンスがプライマリの場合、 は空の string
syncSourceHostで、syncSourceId-1は空の文字列で、
replSetGetStatus.syncSourceIdsyncSourceIdreplSetGetStatus.members[n]._idフィールドには、このインスタンスが同期するノードの が保持されます。このインスタンスがプライマリの場合、 は空の string
syncSourceHostで、syncSourceId-1は空の文字列で、
replSetGetStatus.writeMajorityCount書込み保証 (write concern)
"majority"を実行するに必要なデータを持つ投票ノードの数。書き込み (write) は、データを持つノードにのみ適用できます。の計算については、「
replSetGetStatus.writeMajorityCount書込み保証(write concern)の過半数の計算 」を参照してください。
replSetGetStatus.votingMembersCountvotes: 1で構成されたノードの数(アービタを含む)。
replSetGetStatus.writableVotingMembersCountvotes: 1で構成されたデータを持つノードの数(これはアービタを含みません)。
replSetGetStatus.optimesoptimesフィールドは、レプリケーションの進行状況を検査するために使用されるoptimeを含むドキュメントを保持します。optimesフィールドには、さまざまな optime に対応する ISODate 形式の日付文字列が含まれています。各 optime 値は、次の内容を含むドキュメントです。
replSetGetStatus.optimes.lastCommittedWallTimeに対応するISODate形式の日付文字列。
lastCommittedOpTime
replSetGetStatus.optimes.readConcernMajorityOpTime読み取り保証 (read concern)
"majority"lastCommittedOpTime) クエリを満たすことができる直近の操作に関する、このノードの観点に基づく情報。つまり、直近の はlastCommittedOpTime"majority"readConcernMajorityOpTimeクエリを満たすことができます。 は より小さいか等しいです。
replSetGetStatus.optimes.lastAppliedWallTimeに対応するISODate形式の日付文字列。
appliedOpTime
replSetGetStatus.optimes.lastDurableWallTimeに対応するISODate形式の日付文字列。
durableOpTime
replSetGetStatus.optimes.lastWrittenWallTimeこのノードの oplog に書き込まれた最新エントリの ISODate 形式の日付文字列。
バージョン8.0の新機能。
replSetGetStatus.optimes.writtenOpTimeこのノードの oplog に書き込まれた最新エントリの optime。
バージョン8.0の新機能。
replSetGetStatus.electionCandidateMetrics現在の予備選挙に関するメトリクス。 は 予備選挙
electionCandidateMetricsまたは選挙の候補者に対してのみ使用できます。候補者の場合、このメトリクスは候補者が選挙で選出されない後に使用できなくなります。replSetGetStatus.electionCandidateMetrics.electionTermterm新しい選挙を呼び出した時点でのノードの選挙数( )。
replSetGetStatus.electionCandidateMetrics.lastCommittedOpTimeAtElectionmajority-committed optime新しい選挙を呼び出した時点で、このノードに表示される最近の 。
replSetGetStatus.electionCandidateMetrics.lastSeenOpTimeAtElectionapplied optime新しい選挙を呼び出した時点での、ノードの最近の 。
replSetGetStatus.electionCandidateMetrics.lastSeenWrittenOpTimeAtElection新しい選挙を呼び出した時点で、このノードの oplog に書き込まれた最新エントリの optime。
バージョン8.0の新機能。
replSetGetStatus.electionCandidateMetrics.priorityAtElection選挙を呼び出した時点での、ノードの
priority。
replSetGetStatus.electionCandidateMetrics.electionTimeoutMillis選挙の時点でのレプリカセットの構成済み
electionTimeoutMillis設定。
replSetGetStatus.electionCandidateMetrics.priorPrimaryMemberId前のプライマリの
members[n]._id。前のプライマリがない場合、このフィールドは存在しません。
replSetGetStatus.electionCandidateMetrics.targetCatchupOpTime新しく選出されたプライマリのキャッチアップ プロセスのためのターゲット optime。新しく選出されたプライマリがターゲットのキャッチアップ optime に達したときのみ、書込み (write) の受け入れを開始できます。
replSetGetStatus.electionCandidateMetrics.numCatchUpOps新しく選出されたプライマリがキャッチアップ プロセスを正常に完了したときに適用された操作の数。
replSetGetStatus.electionCandidateMetrics.newTermStartDateプライマリとしてのノードのタームが開始された日時(つまり、
new termエントリが oplog に書込まれた日時)。
replSetGetStatus.electionCandidateMetrics.wMajorityWriteAvailabilityDateレプリカセットの選挙後に書込み保証 (write concern)
"majority"が使用可能になった日時(new termoplog エントリが過半数コミットされた日時)。
replSetGetStatus.electionParticipantMetricsノードが参加した最新の選挙に関連するメトリクス。
replSetGetStatus.electionParticipantMetrics.electionTermノードが参加した選挙のターム。このタームは、参加者のメトリクスに関連付けられた選挙を識別します。
replSetGetStatus.electionParticipantMetrics.lastVoteDate参加者がいつ投票したかをレコードする ISODate 形式の日付文字列。
replSetGetStatus.electionParticipantMetrics.electionCandidateMemberId選挙を呼び出した候補者の
members[n]._id。
replSetGetStatus.electionParticipantMetrics.voteReasonノードが候補者に投票しなかった場合の投票理由。ノードが候補者に投票した場合、値は空の文字列です。
replSetGetStatus.electionParticipantMetrics.lastAppliedOpTimeAtElectionこのノードの最新の選挙時点で、最後に適用された optime。
optime 値は、タイムスタンプ(
ts)とターム(t)を含むドキュメントです。
replSetGetStatus.electionParticipantMetrics.lastWrittenOpTimeAtElection最新の選挙の時点でこのノードの oplog に書き込まれた最新エントリの optime。
バージョン8.0の新機能。
replSetGetStatus.electionParticipantMetrics.maxAppliedOpTimeInSetこのノードに認識される、任意のレプリカセットノードに対して最後に適用された optime。
replSetGetStatus.electionParticipantMetrics.maxWrittenOpTimeInSetこのノードに認識される、レプリカセットノードの oplog に書き込まれた最新エントリの optime。
バージョン8.0の新機能。
replSetGetStatus.electionParticipantMetrics.priorityAtElection選挙時点でのノードの
priority。
replSetGetStatus.electionParticipantMetrics.newTermStartDate選出されたプライマリのタームが開始された日付と時刻。これはプライマリが
new termエントリを oplog に書込んだ日時に相当し、エントリがセカンダリの oplog に追加(複製)された日時ではありません。フィールドは セカンダリ ノードのみで使用できます。プライマリについては、代わりに
replSetGetStatus.electionCandidateMetrics.newTermStartDateを参照してください。
replSetGetStatus.initialSyncStatusこのノードの最初の同期の進行状況とステータスに関する情報を提供するドキュメント。
replSetGetStatus.initialSyncStatus.failedInitialSyncAttemptsこのノードで最初の同期が失敗し、再開する必要があった回数。
replSetGetStatus.initialSyncStatus.maxFailedInitialSyncAttemptsノードがシャットダウンする前に、このノードで最初の同期を再開できる最大回数。
replSetGetStatus.initialSyncStatus.initialSyncStartこのノードの最初の同期の開始タイムスタンプ。
replSetGetStatus.initialSyncStatus.initialSyncEndこのノードの最初の同期の終了タイムスタンプ。
replSetGetStatus.initialSyncStatus.initialSyncAttempts各ドキュメントが 1 回の最初の同期の試行に対応するドキュメントの配列。例:
"initialSyncAttempts" : [ { "durationMillis" : 59539, "status" : "InvalidOptions: error fetching oplog during initial sync :: caused by :: Error while getting the next batch in the oplog fetcher :: caused by :: readConcern afterClusterTime value must not be greater than the current clusterTime. Requested clusterTime: { ts: Timestamp(0, 1) }; current clusterTime: { ts: Timestamp(0, 0) }", "syncSource" : "m1.example.net:27017", "rollBackId" : 1, "operationsRetried" : 120, "totalTimeUnreachableMillis" : 52601 } ], 各ドキュメントには、最初の同期を試行するための以下の情報が含まれています。
フィールド説明durationMillis
最初の同期試行の継続時間(ミリ秒)。
状態
最初の同期試行の終了ステータス。
syncSource
最初の同期試行の同期ソース。
rollBackId
最初の同期試行の開始時点での同期ソースのロールバック識別子。
rollBackIdは、ファイル コピー ベースの最初の同期を使用する場合は表示されません。operationsRetried
すべての操作再試行回数の合計。
totalTimeUnreachableMillis
操作の再試行に費やされた時間の合計。
replSetGetStatus.initialSyncStatus.appliedOps最初の同期の開始後に実行され、データベースのクローン後に適用された操作の数。
最初の同期プロセスの一部として、ノードは oplog を使用して、レプリカセットの現在の状態を反映するようにデータセットを更新します。
replSetGetStatus.initialSyncStatus.initialSyncOplogStartノードが最初の同期の開始後に発生した変更を適用する最初の同期の oplog アプリケーション ステージの開始タイムスタンプ。
最初の同期プロセスの一部として、ノードは oplog を使用して、レプリカセットの現在の状態を反映するようにデータセットを更新します。
replSetGetStatus.initialSyncStatus.initialSyncOplogEndノードが最初の同期の開始後に発生した変更を適用する最初の同期の oplog アプリケーション ステージの終了タイムスタンプ。
最初の同期プロセスの一部として、ノードは oplog を使用して、レプリカセットの現在の状態を反映するようにデータセットを更新します。
replSetGetStatus.initialSyncStatus.syncSourceUnreachableSince同期ソースが到達不能になった日時。
現在の最初の同期中に同期ソースが利用不可の場合にのみ存在します。
replSetGetStatus.initialSyncStatus.currentOutageDurationMillis同期ソースが利用できなかった時間(ミリ秒単位)。
現在の最初の同期中に同期ソースが利用不可の場合にのみ存在します。
replSetGetStatus.initialSyncStatus.databases最初の同期中にクローンされたデータベースの詳細。
replSetGetStatus.initialSyncStatus.databases.databasesCloned最初の同期中にクローンされたデータベースの数。
replSetGetStatus.initialSyncStatus.databases.<dbname>各データベースについて、そのデータベースのクローン作成の進行状況に関する情報を返すドキュメント。
{ "collections" : <number of collections to clone in the database>, "clonedCollections" : <number of collections cloned to date>, "start" : <start date and time for the database clone>, "end" : <end date and time for the database clone>, "elapsedMillis" : <duration of the database clone>, "<db>.<collection>" : { "documentsToCopy" : <number of documents to copy>, "documentsCopied" : <number of documents copied to date>, "indexes" : <number of indexes>, "fetchedBatches" : <number of batches of documents fetched to date>, "start" : <start date and time for the collection clone>, "end" : <end date and time for the collection clone>, "elapsedMillis" : <duration of the collection clone>, "receivedBatches" : <number of batches of documents received to date> } }
replSetGetStatus.initialSyncStatus.methodバージョン5.2の新機能。
最初の同期に使用されるメソッド。
logicalに設定されている場合、同期は論理的な最初の同期です。fileCopyBasedに設定されている場合は、同期はファイル コピー ベースの最初の同期になります。
replSetGetStatus.initialSyncStatus.approxTotalDataSize同期されるすべてのファイルのおおよそのサイズ(バイト)。
このフィールドは、論理的またはファイル コピー ベースの最初の同期を使用する場合に表示されます。
replSetGetStatus.initialSyncStatus.approxTotalBytesCopiedすでにコピーされた合計バイト数。
このフィールドは、論理的またはファイル コピー ベースの最初の同期を使用する場合に表示されます。
replSetGetStatus.initialSyncStatus.totalInitialSyncElapsedMillis進行中の同期試行の合計経過時間。
このフィールドは、論理的またはファイル コピー ベースの最初の同期を使用する場合に表示されます。
replSetGetStatus.initialSyncStatus.remainingInitialSyncEstimatedMillis進行中の同期試行の予想残り時間。
このフィールドは、論理的またはファイル コピー ベースの最初の同期を使用する場合に表示されます。
replSetGetStatus.initialSyncStatus.initialBackupDataSize同期されるファイルの初期セットの合計サイズ(バイト)。
このフィールドは、ファイル コピー ベースの最初の同期を使用する場合にのみ表示されます。
replSetGetStatus.initialSyncStatus.previousOplogEnd前のバックアップカーソルで使用可能な optime。
このフィールドは、ファイル コピー ベースの最初の同期を使用する場合にのみ表示されます。
replSetGetStatus.initialSyncStatus.currentOplogEnd現在のバックアップカーソルで使用できることが保証されている最後の optime。
このフィールドは、ファイル コピー ベースの最初の同期を使用する場合にのみ表示されます。
replSetGetStatus.initialSyncStatus.syncSourceLastAppliedこのバックアップカーソルの開始前に同期ソースに適用された最後の更新の optime。
このフィールドは、ファイル コピー ベースの最初の同期を使用する場合にのみ表示されます。
replSetGetStatus.initialSyncStatus.numExtensions同期によって新しいバックアップカーソルが開始された回数。
バックアップカーソルが開始されていない場合、このフィールドは表示されません。
このフィールドは、ファイル コピー ベースの最初の同期を使用する場合にのみ表示されます。
replSetGetStatus.initialSyncStatus.extensionDataSize現在の拡張子の合計バイト数。
このフィールドは、進行中の拡張がない場合は表示されません。
このフィールドは、ファイル コピー ベースの最初の同期を使用する場合にのみ表示されます。
replSetGetStatus.initialSyncStatus.filesファイル コピー ベースの最初の同期中に同期されるファイルの配列。
このフィールドは、ファイル コピー ベースの最初の同期を使用する場合にのみ表示されます。
replSetGetStatus.initialSyncStatus.files[n].filePathバックアップカーソルのルートに対するファイルの相対パス。
このフィールドは、ファイル コピー ベースの最初の同期を使用する場合にのみ表示されます。
replSetGetStatus.initialSyncStatus.files[n].fileSizeバックアップカーソルによって報告されるファイルのサイズ。
このフィールドは、ファイル コピー ベースの最初の同期を使用する場合にのみ表示されます。
replSetGetStatus.initialSyncStatus.files[n].bytesCopiedこれまでにコピーされたバイト数。
このフィールドは、ファイル コピー ベースの最初の同期を使用する場合にのみ表示されます。
replSetGetStatus.initialSyncStatus.files[n].extensionNumberこのファイルが拡張機能の一部である場合、ファイルが属する拡張機能の番号。
このフィールドは、ファイル コピー ベースの最初の同期を使用する場合にのみ表示されます。
replSetGetStatus.membersmembersフィールドは、レプリカセット内のすべてのノードのドキュメントを含む配列を保持します。replSetGetStatus.members[n].ipノードの解決済みIPアドレス。 が をIPアドレスに解決(変換)できない場合、戻り値はBSON null
mongodreplSetGetStatus.members[n].nameになります。それ以外の場合、戻り値は解決されたIPアドレスの文字列表記になります。
replSetGetStatus.members[n].selfノードが現在の
mongodインスタンスであるかどうかを示すブール値。selfフィールドは、現在のmongodインスタンスのドキュメントにのみ含まれるため、その値は常にtrueです。
replSetGetStatus.members[n].stateノードのレプリカ状態を表す
0から10までの整数。
replSetGetStatus.members[n].stateStrstateを説明する string。
replSetGetStatus.members[n].uptimereplSetGetStatusコマンドが実行されたメンバーの場合、 はuptimeメンバーがオンラインになっている秒数です。他のノードでは、
uptimeは、replSetGetStatusコマンドが実行されたノードと継続的に通信状態にあった秒数です。
replSetGetStatus.members[n].optimeこのノードが適用した最後の操作に関する oplog からの情報。
optimeは、次の内容を含むドキュメントを返します。tterm、プライマリ上で最後に適用された操作が最初に生成された 。
replSetGetStatus.members[n].optimeDurableこのノードがジャーナルに適用した最後の操作に関する oplog からの情報。
optimeDurableは、次の内容を含むドキュメントを返します。
replSetGetStatus.members[n].optimeDateこのノードが適用したoplogからの最後のエントリを含むISODate形式の文字列。これが
lastHeartbeatと大きく相違する場合、このノードは.. を経験しています。レプリケーションラグまたは 最後の更新後に新しい操作が行われていません。セットのすべてのノード間でmembers.optimeDateを比較してください。
replSetGetStatus.members[n].lastAppliedWallTimeレプリカセットのこのノードによって適用された最後の操作がプライマリノードに適用された時点を反映するISODate形式のstring。
replSetGetStatus.members[n].lastDurableWallTimeこのノードのジャーナルに書込まれた最後の操作がプライマリノードに最初に適用された時点を反映するISODate形式のstring。
replSetGetStatus.members[n].electionTime現在のプライマリについて、oplog からの選挙タイムスタンプに関する情報。選挙の詳細については、「レプリカセットの高可用性」を参照してください。
replSetGetStatus.members[n].electionDate現在のプライマリについて、選挙日を含む ISODate 形式の文字列。選挙の詳細については、「レプリカセットの高可用性」を参照してください。
replSetGetStatus.members[n].lastHeartbeatISODate形式の日付と時刻で、 replSetGetStatus コマンドを処理したサーバーがこのノード(
members[n])に送信したハートビートからの応答を最後に受信した時刻を含みます。これらのレプリカセットのノード間のレイテンシを追跡するには、この値をdatelastHeartbeatRecvフィールドと フィールドの値と比較します。この値は、
replSetGetStatus.members[n].selfで指定されたサーバー以外のレプリカセットノードでのみ使用できます。
replSetGetStatus.members[n].lastHeartbeatRecvISODate形式の日付と時刻で、 replSetGetStatus コマンドを処理したサーバーがこのノード(
members[n])からのハートビートリクエストを最後に受信した時刻を含みます。これらのレプリカセットのノード間のレイテンシを追跡するには、この値を フィールドとdatelastHeartbeatフィールドの値と比較します。この値は、
replSetGetStatus.members[n].selfで指定されたサーバー以外のレプリカセットノードでのみ使用できます。
replSetGetStatus.members[n].lastHeartbeatMessage最後のハートビートに追加のメッセージが含まれている場合、 にはそのメッセージの string
lastHeartbeatMessage表現が含まれます。
replSetGetStatus.members[n].pingMspingMsは、ラウンドトリップ パケットがリモート ノードとローカル インスタンスの間を移動するのにかかるミリ秒(ms)数を表します。この値は、
rs.status()データを返すノードには表示されません。
replSetGetStatus.members[n].syncSourceHostsyncSourceHostフィールドには、このインスタンスが同期するノードのホスト名が保持されます。がプライマリの場合、
replSetGetStatus.members[n]syncSourceHostは空の string で、 は空の stringsyncSourceId-1です。
replSetGetStatus.members[n].syncSourceIdsyncSourceIdフィールドには のreplSetGetStatus.members[n]._idsyncSourceHost値が保持されます。がプライマリの場合、
replSetGetStatus.members[n]syncSourceHostは空の string で、 は空の stringsyncSourceId-1です。
replSetGetStatus.members[n].configVersionconfigVersion値はreplica set configuration versionです。
replSetGetStatus.members[n].optimeWrittenメンバーの oplog に書き込まれた最新のエントリの optime。
バージョン8.0の新機能。
replSetGetStatus.members[n].optimeWrittenDateメンバーの oplog に書き込まれた最新のエントリの ISODate 形式の日付文字列。
バージョン8.0の新機能。
replSetGetStatus.members[n].lastWrittenWallTimeこのノードの最新の oplog エントリがプライマリに書き込まれた時点の、ISODate 形式の日付文字列。
バージョン8.0の新機能。
replSetGetStatus.tooStaleレプリカセットノードがプライマリのoplogよりも大幅に遅延し、
RECOVERING状態のままになっていることを示すブール値。このフィールドは、その値が の場合にのみreplSetGetStatustrueの出力に含まれます。
ok ステータス フィールド、operationTime フィールド、および $clusterTime フィールドの詳細については、「応答」も参照してください。
replSetGetStatus.optimeレプリカセットからノードを削除した後に存在します。 削除されたノードによって適用された最後の oplog エントリのoptimeを提供します。
replSetGetStatus.optimeDateレプリカセットからノードを削除した後に存在します。 string削除されたノードによって適用された最後のoptime oplogエントリの の ISODate 形式 を提供します。
replSetGetStatus.optimeWrittenレプリカセットからノードを削除した後に表示されます。削除されたノードの oplog に書込まれた最後のエントリの optime を提供します。
バージョン8.0の新機能。
replSetGetStatus.optimeWrittenDateレプリカセットからノードを削除した後に表示されます。削除されたノードの oplog に書込まれた最後のエントリの optime の、ISODate 形式の文字列を提供します。
バージョン8.0の新機能。