定義
replSetGetStatusreplSetGetStatusコマンドは、コマンドを処理したサーバーの観点からレプリカセットのステータスを返します。replSetGetStatusは管理データベースで実行する必要があります。が正常に返されるには、
replSetGetStatusmongodインスタンスがレプリカセット メンバーである必要があります。このコマンドによって提供されるデータは、レプリカセットの他のノードによってサーバーに送信されるハートビートに含まれるデータから派生します。ハートビートの頻度により、これらのデータは数秒古くなる可能性があります。
Tip
mongoshでは、このコマンドはrs.status()ヘルパー メソッドを通じて実行することもできます。ヘルパー メソッドは
mongoshユーザーには便利ですが、データベースコマンドと同じレベルの情報は返されない可能性があります。 便宜上必要ない場合、または追加の戻りフィールドが必要な場合は、 データベースコマンドを使用します。
互換性
このコマンドは、次の環境でホストされている配置で使用できます。
MongoDB Atlas はクラウドでの MongoDB 配置のためのフルマネージド サービスです
重要
このコマンドは、M0 および Flex クラスターではサポートされていません。詳細については、「 サポートされていないコマンド 」を参照してください。
MongoDB Enterprise: サブスクリプションベースの自己管理型 MongoDB バージョン
MongoDB Community: ソースが利用可能で、無料で使用できる自己管理型の MongoDB のバージョン
構文
このコマンドの構文は、次のとおりです。
db.adminCommand( { replSetGetStatus: 1 } )
最初の同期中にノードでreplSetGetStatusまたはmongoshヘルパーrs.status()を実行した場合(つまり 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) }, "readConcernMajorityWallTime" : ISODate("2024-08-15T23:06:13.978Z"), "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) }, "readConcernMajorityWallTime" : ISODate("2024-08-15T23:06:13.978Z"), "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), "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), }
- 以前のバージョン(3.6.x〜4.2.0)
次のように、任意の
initialSync: 1を指定して、出力にreplSetGetStatus.initialSyncStatusを含めることができます(最初の同期ステータスを返さない場合は省略できます)。db.adminCommand( { replSetGetStatus: 1, initialSync: 1 } )
- MongoDB 5.2以降、
- ファイル コピー ベースの最初の同期を使用する場合、
replSetGetStatus.initialSyncStatusドキュメントには追加のフィールドが含まれます。
最初の同期中にノードに対して replSetGetStatus を実行すると、コマンドは replSetGetStatus.initialSyncStatus メトリクスを返します。
db.adminCommand( { replSetGetStatus: 1 } )
メンバーが最初の同期を完了して別の状態に移行すると、 replSetGetStatus.initialSyncStatusメトリクスは使用できなくなります。
次の例では、最初の同期中に 4.4 レプリカセット ノードの管理データベース上で replSetGetStatus コマンドを実行します。
{ "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フィールドには、このインスタンスが同期するノードのホスト名が保持されます。このインスタンスがプライマリの場合、
syncSourceHostは空の string であり、syncSourceId-1は です。
replSetGetStatus.syncSourceIdsyncSourceIdフィールドには、このインスタンスが同期するノードのreplSetGetStatus.members[n]._idが保持されます。このインスタンスがプライマリの場合、
syncSourceHostは空の string であり、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 形式の日付string
lastCommittedOpTime。
replSetGetStatus.optimes.readConcernMajorityOpTime直近の操作のうち読み取り保証(read concern)
"majority"クエリを満たすことができるものに関する、このノードの観点に基づく情報。つまり、"majority"クエリの条件に一致する直近のlastCommittedOpTime。readConcernMajorityOpTimeはlastCommittedOpTime未満または等しいのいずれかです。
replSetGetStatus.optimes.readConcernMajorityWallTimeに対応する ISODate 形式の日付string
readConcernMajorityOpTime。
replSetGetStatus.optimes.lastAppliedWallTimeに対応する ISODate 形式の日付string
appliedOpTime。
replSetGetStatus.optimes.lastDurableWallTimeに対応する ISODate 形式の日付string
durableOpTime。
replSetGetStatus.optimes.lastWrittenWallTimeこのノードの oplog に書き込まれた最新エントリの ISODate 形式の日付文字列。
バージョン8.0の新機能。
replSetGetStatus.optimes.writtenOpTimeこのノードの oplog に書き込まれた最新エントリの optime。
バージョン8.0の新機能。
replSetGetStatus.electionCandidateMetrics現在の予備選挙に関するメトリクス。
electionCandidateMetricsは予備選挙または選挙の候補者に対してのみ使用できます。候補者の場合、このメトリクスは候補者の落選後に使用できなくなります。replSetGetStatus.electionCandidateMetrics.electionTerm新しい選出を呼び出した時点でのノードの選出数(
term)。
replSetGetStatus.electionCandidateMetrics.lastCommittedOpTimeAtElection新しい選出を呼び出した時点で、このノードに表示される最近の
majority-committed optime。
replSetGetStatus.electionCandidateMetrics.lastSeenOpTimeAtElection新しい選出を呼び出した時点での、ノードの最新の
applied 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 アドレス。
mongodがreplSetGetStatus.members[n].nameを IP アドレスに解決(変換)できない場合、戻り値は BSON null になります。それ以外の場合、戻り値は解決された IP アドレスの文字列表記になります。
replSetGetStatus.members[n].selfノードが現在の
mongodインスタンスであるかどうかを示すブール値。selfフィールドは、現在のmongodインスタンスのドキュメントにのみ含まれるため、その値は常にtrueです。
replSetGetStatus.members[n].stateノードのレプリカ状態を表す
0から10までの整数。
replSetGetStatus.members[n].uptimereplSetGetStatusコマンドが実行されたノードの場合、uptimeはノードがオンラインになっている秒数です。他のノードでは、
uptimeは、ノードがreplSetGetStatusコマンドの実行ノードと継続的に通信状態にあった秒数です。
replSetGetStatus.members[n].optimeDurableこのノードがジャーナルに適用した最後の操作に関する oplog からの情報。
optimeDurableは、次の内容を含むドキュメントを返します。
replSetGetStatus.members[n].optimeDateこのノードが適用した oplog からの最後のエントリを含む ISODate 形式の文字列。この値が
lastHeartbeatと大きく相違する場合、このノードで「レプリケーションラグ」が発生しているか、最後の更新後に新しい操作が行われていません。セットのすべてのノード間でmembers.optimeDateを比較ししてください。
replSetGetStatus.members[n].lastAppliedWallTimeレプリカセットのこのノードによって適用された最後の操作がプライマリ ノードに適用された時点を反映する ISODate 形式の日付文字列。
replSetGetStatus.members[n].lastDurableWallTimeこのノードのジャーナルに書込まれた最後の操作がプライマリ ノードに最初に適用された時点を反映する ISODate 形式の文字列。
replSetGetStatus.members[n].electionTime現在のプライマリについて、oplog からの選挙タイムスタンプに関する情報。選挙の詳細については、「レプリカセットの高可用性」を参照してください。
replSetGetStatus.members[n].electionDate現在のプライマリについて、選挙日を含む ISODate 形式の文字列。選挙の詳細については、「レプリカセットの高可用性」を参照してください。
replSetGetStatus.members[n].lastHeartbeatISODate 形式の日付と時刻で、replSetGetStatus コマンドを処理したサーバーがこのノード(
members[n])に送信したハートビートからの応答を最後に受信した時刻を含みます。これらのレプリカセットのノード間のレイテンシを追跡するには、この値をdateフィールドとlastHeartbeatRecvフィールドの値と比較します。この値は、
replSetGetStatus.members[n].selfで指定されたサーバー以外のレプリカセット ノードでのみ使用できます。
replSetGetStatus.members[n].lastHeartbeatRecvISODate 形式の日付と時刻で、replSetGetStatus コマンドを処理したサーバーがこのノード(
members[n])からのハートビート リクエストを最後に受信した時刻を含みます。これらのレプリカセットのノード間のレイテンシを追跡するには、この値をdateフィールドとlastHeartbeatフィールドの値と比較します。この値は、
replSetGetStatus.members[n].selfで指定されたサーバー以外のレプリカセット ノードでのみ使用できます。
replSetGetStatus.members[n].lastHeartbeatMessage最後のハートビートに追加のメッセージが含まれている場合、
lastHeartbeatMessageにはそのメッセージの string 表現が含まれます。
replSetGetStatus.members[n].pingMspingMsは、ラウンドトリップ パケットがリモート ノードとローカル インスタンスの間を移動するのにかかるミリ秒(ms)数を表します。この値は、
rs.status()データを返すノードには表示されません。
replSetGetStatus.members[n].syncSourceHostsyncSourceHostフィールドには、このインスタンスが同期するノードのホスト名が保持されます。replSetGetStatus.members[n]がプライマリの場合、syncSourceHostは空の string で、syncSourceId-1は です。
replSetGetStatus.members[n].syncSourceIdsyncSourceIdフィールドにはsyncSourceHostのreplSetGetStatus.members[n]._id値が保持され 。replSetGetStatus.members[n]がプライマリの場合、syncSourceHostは空の string で、syncSourceId-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状態のままになっていることを示すブール値。 このフィールドは、値がtrueの場合にのみreplSetGetStatusの出力に含まれます。
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の新機能。