MongoDB.local SF, Jan 15: See the speaker lineup & ship your AI vision faster. Use WEB50 to save 50%
Find out more >
Docs Menu
Docs Home
/ /
mongosync API エンドポイント

progress

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

GET /api/v1/progress

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

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 はソースクラスターに対して定期的に非操作書込みを実行するため、 lagTimeSecondsフィールドの値が 0 にならない可能性があります。

collectionCopy

オブジェクト

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

collectionCopy .estimatedTotalBytes

integer

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

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

collectionCopy .estimatedCopiedBytes

integer

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

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

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

directionMapping

オブジェクト

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

directionMapping .Source

string

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

directionMapping .Destination

string

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

mongosyncID

string

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

coordinatorID

string

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

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

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

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

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

フィールド
タイプ
説明

error

string

エラーが発生した場合、 はエラーの詳細な説明を提供します。 このフィールドは、エンドポイントへの呼び出しが成功した場合は省略されます

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

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

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

    注意

    mongosync 1.7.3以降、 同期操作を再開または再開する際に、 mongosyncが応答するまでに少なくとも 2 分かかる場合があります。 この間、 progressエンドポイントへの呼び出しが失敗する可能性があります。 progress呼び出しが失敗した場合は、安全に再試行できます。

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"
}
}
}

戻る

始める

項目一覧