说明
返回同步进程的更新状态或错误。
请求
GET /api/v1/progress
响应
progress端点返回更新状态或错误。
成功响应
如果mongosync成功获取同步进程的状态,则所有响应字段都将包装在具有以下字段的顶级progress对象中:
字段 | 类型 | 说明 |
|---|---|---|
| 字符串 |
|
| 布尔 | 如果 |
| 布尔 | 如果 索引验证将持续进行,直到提交完成。 |
| 字符串 | 提供有关同步进度的额外信息。 可能的
|
| 整型 | 对于 注意
|
| 对象 | 估计从collection复制的数据总量以及已复制到目标集群的数据量 |
| 整型 |
|
| 整型 |
要将总估计进度计算为百分比,请将每个 由于操作重试, |
| 对象 | 描述同步的映射方向,即源集群和目标集群。 |
| 字符串 | 源集群。 以 |
| 字符串 | 目标集群。 以 |
| 字符串 |
|
| 字符串 | 协调器实例的标识符字符串。
|
错误响应
如果mongosync遇到错误, progress端点将返回以下字段:
字段 | 类型 | 说明 |
|---|---|---|
| 字符串 | 如果发生错误,请提供错误的详细描述。 成功调用端点时可省略该字段 |
行为
当
mongosync处于IDLE状态时,除state和canCommit之外的所有输出字段均为null。当
mongosync处于PAUSED状态时,lagTimeSeconds字段为null。端点不会自动刷新。 要获取更新后的状态,请再次调用
progress端点。注意
从
mongosync1.7.3开始, 恢复或重新启动同步操作时,mongosync可能至少需要两分钟才能响应。 在此期间,对progress端点的任何调用都可能失败。 如果progress调用失败,可以安全地重试。
端点保护
mongosync 不保护progress端点。 但是,默认情况下,该 API 仅绑定到本地主机,不接受来自其他来源的调用。 此外, 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" } } }