mongosync e instruções sobre como atualizar sua versão do mongosync.Descrição
Retorna um status atualizado do processo de sincronização ou um erro.
Solicitar
GET /api/v1/progress
Resposta
O endpoint progress retorna um status atualizado ou um erro.
Resposta bem-sucedida
Se o mongosync obter com êxito o status do processo de sincronização, todos os campos de resposta serão envoltos em um objeto progress de nível superior com os seguintes campos:
Campo | Tipo | Descrição |
|---|---|---|
| string | O estado atual de |
| booleano | Se |
| booleano | Se A validação do índice continua até que o commit seja concluído. |
| string | Fornece informações adicionais sobre o progresso da sincronização. Os possíveis valores de
|
| inteiro | Tempo em segundos entre o último evento aplicado e o horário do evento mais recente atual para esta instância de Observação
|
| objeto | Estima a quantidade total de dados que estão sendo copiados de collection e a quantidade que já foi copiada para o cluster de destino |
| inteiro | Número total estimado de bytes a serem copiados globalmente por todas as instâncias
|
| inteiro | Número estimado de bytes que foram copiados para o cluster de destino por essa instância Para calcular o progresso total estimado como uma porcentagem, adicione o valor do campo O valor de |
| objeto | Descreve a direção de mapeamento para a sincronização, ou seja, os clusters de origem e destino. |
| string | cluster de origem. Retornado no formulário |
| string | Cluster de destino. Retornado no formulário |
| string | A string do identificador para a instância do |
| string | A string do identificador da instância do coordenador.
|
Resposta de erro
Se o mongosync encontrar um erro, o endpoint progress retornará o seguinte campo:
Campo | Tipo | Descrição |
|---|---|---|
| string | Se ocorreu um erro, fornece uma descrição detalhada do erro. Este campo é omitido quando a chamada para o endpoint é bem-sucedida |
Comportamento
Quando
mongosyncestá no estadoIDLE, todos os campos de saída, excetostateecanCommit, sãonull.Quando
mongosyncestá no estadoPAUSED, o campolagTimeSecondsénull.O endpoint não é atualizado automaticamente. Para obter o status atualizado, chame o endpoint
progressnovamente.Observação
A partir de
mongosync1.7.3,mongosyncpode levar pelo menos dois minutos para responder quando você retoma ou reinicia uma operação de sincronização. Durante esse tempo, qualquer chamada para o endpointprogresspode falhar. Se uma chamadaprogressfalhar, é seguro tentar novamente.
Proteção de endpoint
mongosync não protege o endpoint progress . No entanto, por padrão, a API é vinculada apenas ao host local e não aceita chamadas de outras fontes. Além disso, a chamada progress não expõe credenciais de conexão ou dados de usuário.
Exemplo
O exemplo a seguir retorna o status do processo de sincronização.
Solicitar
curl localhost:27182/api/v1/progress -XGET
Resposta
{ "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" } } }