Docs Menu
Docs Home
/
MongoDB Cluster-to-Cluster Sync
/ /

progress

同期プロセスの更新されたステータスまたはエラーを返します。

GET /api/v1/progress

progressエンドポイントは更新されたステータスまたはエラーのいずれかを返します。

応答オブジェクトには、 2の最上位フィールド、 successprogressが含まれています。

successフィールドには、 progressコマンドのステータスが含まれます。 常にtrueの場合、値はtrueです。

mongosyncが同期プロセスのステータスを正常に取得すると、すべての応答フィールドは次のフィールドを持つ最上位のprogressオブジェクトにラップされます。

フィールド
タイプ
説明

state

string

mongosyncの現在の状態。 利用可能な状態の詳細については、「 状態の説明 」を参照してください。

canCommit

ブール値

trueの場合、コミットリクエストが成功することを示します。 これは、最初の同期が完了し、変更イベントが適用されていることも意味します。

canWrite

ブール値

trueの場合、 は、宛先クラスターで書込み(write)が許可されていることを示します。 Do not write to the destination cluster while canWrite is false.

インデックスの検証は、コミットが完了するまで続きます。

info

string

同期の進行状況に関する追加情報を提供します。 可能なinfo値は次のとおりです。

  • "collection copy"

  • "change event application"

  • "waiting for commit to complete"

  • "commit completed"

lagTimeSeconds

integer

mongosyncが宛先クラスターに適用した最新のイベント タイムスタンプと、 mongosyncのこのインスタンスのソースクラスターの最新タイムスタンプとの間の時間差(秒単位)。

mongosync はソースクラスターに対して定期的にノーオペレーション(no-op)書込みを実行するため、 mongosync lagTimeSecondsフィールドの値が 0 にならない可能性があります。

ソースクラスターでは継続的な何も操作が行われないため、ソースクラスターで実際に書込み (write) が行われていない場合でも、時間差は 0 数秒を超えることが多いです。 mongosyncが移行をコミットすると、時間差は 0 になります。

バージョン 1.9 での埋め込み検証の導入により、埋め込み検証が有効になっているたびに 3 つの異なる lagTimeSeconds フィールドが存在します。

  • lagTimeSeconds について mongosync

  • lagTimeSeconds 検証子のソースクラスター用

  • lagTimeSeconds 検証子の宛先クラスター用

埋め込み検証が無効になっている場合、lagTimeSecondsmongosync にのみ適用されます。

totalEventsApplied

integer

mongosyncのこのインスタンスが宛先クラスターに適用した変更イベントのおおよその数。

この値は永続化されず、カウントから特定のイベントが省略されるため、イベントの総数を正確に表さない可能性があります。

collectionCopy

オブジェクト

コレクションからコピーされるデータの合計量と、宛先クラスターにすでにコピーされたデータ量を見積もります

collectionCopy .estimatedTotalBytes

integer

コレクションの初期コピー中にすべてのmongosyncインスタンスによってグローバルにコピーされる推定合計バイト数。

mongosync は、移行前に推定される合計バイト数を近似し、同期プロセス中にこの値を更新しません。 この値は、同期中にソースクラスターに加えられた変更を反映していないため、移行の進行状況を正確に示すものではありません。

collectionCopy .estimatedCopiedBytes

integer

コレクションの初期コピー中にこのmongosyncインスタンスによって宛先クラスターにコピーされた推定バイト数。

推定される進行状況の合計をパーセンテージとして計算するには、各mongosyncインスタンスのestimatedCopiedBytesフィールドの値を加算し、その結果をestimatedTotalBytesフィールドの値で割ります。 次に、結果に 100 を掛けます。

操作の再試行により、 estimatedCopiedBytesの値はestimatedTotalBytesの値より大きくなる可能性があります。 estimatedTotalBytesestimatedCopiedBytesの比較は、移行の進行状況を示す正確なインジケーターではありません。

directionMapping

オブジェクト

同期のマッピング方向(ソースクラスターと宛先クラスター)を説明します。

directionMapping .Source

string

ソースクラスター。 <cluster name>: <host>:<port>の形式で返されます。

directionMapping .Destination

string

宛先クラスター。 <cluster name>: <host>:<port>の形式で返されます。

mongosyncID

string

mongosync インスタンスの識別子string 。

バージョン 1.3 で追加

coordinatorID

string

コーディネーター インスタンスの識別子 string。

  • mongosync が別の インスタンスによって調整されている場合、このフィールドにはコーディネーター インスタンスの識別子stringが表示されます。

  • mongosyncがコーディネーターであるか、単独で実行されている場合、このフィールドはmongosyncIDフィールドと同じ値を返します。

  • mongosyncが起動すると、 mongosyncがコーディネーターを識別するまで、このフィールドはnullを返します。

バージョン 1.3 で追加

verification

ドキュメント

埋め込み検証子によって実行される検証チェックのフェーズと進行状況に関する情報を提供します。

バージョン 1.9 の新機能

verification.source

ドキュメント

ソースクラスターで実行中検証チェックのフェーズと進行状況に関する情報を提供します。

バージョン 1.9 の新機能

verification.source. estimatedDocumentCount

integer

ソースクラスター上のドキュメントの推定数。

バージョン 1.9 の新機能

verification.source. hashedDocumentCount

integer

ソースクラスター上の 検証者によってハッシュされたドキュメントの数 。

バージョン 1.9 の新機能

verification.source. lagTimeSeconds

integer

ソースクラスターで最後の検証チェックが実行された後の時間(秒単位)。

バージョン 1.9 の新機能

verification.source. phase

string

ソースクラスター上の検証プロセスの現在のフェーズ。

バージョン 1.9 の新機能

verification.source. scannedCollectionCount

integer

ソースクラスター上の 埋め込み検証子 によってスキャンされたコレクションの数。

バージョン 1.9 の新機能

verification.source. totalCollectionCount

integer

検証チェックに含めるソースクラスター上のコレクションの数。

verification.destination

ドキュメント

宛先クラスターで実行中検証チェックのフェーズと進行状況に関する情報を提供します。

バージョン 1.9 の新機能

verification.destination. estimatedDocumentCount

integer

宛先クラスター上の推定ドキュメント数。

バージョン 1.9 の新機能

verification.destination. hashedDocumentCount

integer

宛先クラスター上の検証子によってハッシュされたドキュメントの数。

バージョン 1.9 の新機能

verification.destination. lagTimeSeconds

integer

宛先クラスターで最後に検証チェックが実行された以降の時間(秒単位)。

バージョン 1.9 の新機能

verification.destination. phase

string

宛先クラスター上の検証プロセスの現在のフェーズ。

バージョン 1.9 の新機能

verification.destination. scannedCollectionCount

integer

宛先クラスターの埋め込み検証子によってスキャンされたコレクションの数。

バージョン 1.9 の新機能

verification.destination. totalCollectionCount

integer

検証チェックに含める宛先クラスター上のコレクションの数。

バージョン 1.9 の新機能

mongosyncでエラーが発生した場合、 progressエンドポイントは次のフィールドを返します。

フィールド
タイプ
説明

success

ブール値

progressコマンドのステータス。 値は、コマンドが成功した場合はtrueで、コマンドが失敗した場合はfalseです。

error

string

エラーのタイプ。

errorDescription

string

エラーの詳細な説明。

  • mongosyncIDLE状態にある場合、 statecanCommitを除くすべての出力フィールドはnullになります。

  • mongosyncPAUSED状態にある場合、 lagTimeSecondsフィールドはnullです。

  • エンドポイントは自動更新されません。 更新されたステータスを取得するには、 progressエンドポイントを再度呼び出します。

  • mongosyncがコレクション コピー フェーズに達する前に/progressを呼び出すと、 estimatedCopiedBytesには0が、 estimatedTotalBytesには1が返されます。

  • estimatedTotalBytes ソースクラスターでドキュメントが挿入または削除された場合、コレクションのコピーフェーズ中に変更される可能性があります。

  • estimatedCopiedBytesestimatedTotalBytesより大きくはありません。 コレクション コピー フェーズの終了時に進行状況が100 % に達しました( estimatedCopiedBytes = estimatedTotalBytes )。

mongosync は、 progressエンドポイントを保護しません。 ただし、デフォルトでは、API は localhost のみにバインドされ、他のソースからの呼び出しは受け入れません。 さらに、 progress呼び出しでは接続認証情報やユーザー データは公開されません。

次の例では、同期プロセスのステータスを返します。

curl localhost:27182/api/v1/progress -XGET
{
"progress":
{
"state":"RUNNING",
"canCommit":true,
"canWrite":false,
"info":"change event application",
"lagTimeSeconds":0,
"collectionCopy":
{
"estimatedTotalBytes":694,
"estimatedCopiedBytes":694
},
"directionMapping":
{
"Source":"cluster0: localhost:27017",
"Destination":"cluster1: localhost:27018"
},
"verification":
{
"source":
{
"estimatedDocumentCount": 42,
"hashedDocumentCount": 42,
"lagTimeSeconds": 2,
"totalCollectionCount": 42,
"scannedCollectionCount": 10,
"phase": "stream hashing"
},
"destination": {
"estimatedDocumentCount": 42,
"hashedDocumentCount": 42,
"lagTimeSeconds": 2,
"totalCollectionCount": 42,
"scannedCollectionCount": 10,
"phase": "stream hashing"
}
}
},
"success": true
}

戻る

始める

項目一覧

  • 説明
  • リクエスト
  • 応答
  • 正常な応答
  • エラー応答
  • 動作
  • エンドポイント保護
  • リクエスト
  • 応答