MongoDB.local SF, Jan 15: See the speaker lineup & ship your AI vision faster. Use WEB50 to save 50%
Find out more >
Menu Docs
Página inicial do Docs
/ /
Pontos de conexão da API do mongosync

progress

Retorna um status atualizado do processo de sincronização ou um erro.

GET /api/v1/progress

O endpoint progress retorna um status atualizado ou um erro.

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

state

string

O estado atual de mongosync. Para obter informações sobre os estados possíveis, consulteDescrições de estado do .

canCommit

booleano

Se true, indica que uma solicitação de confirmação será bem-sucedida. Isso também significa que a sincronização inicial foi concluída e está aplicando eventos de alteração.

canWrite

booleano

Se true, indica que as gravações são permitidas no cluster de destino. Não grave no cluster de destino enquanto canWrite estiver false.

A validação do índice continua até que o commit seja concluído.

info

string

Fornece informações adicionais sobre o progresso da sincronização. Os possíveis valores de info incluem:

  • "collection copy"

  • "change event application"

  • "waiting for commit to complete"

  • "commit completed"

lagTimeSeconds

inteiro

Tempo em segundos entre o último evento aplicado e o horário do evento mais recente atual para esta instância de mongosync.

Observação

mongosync executa gravações periódicas no-op no cluster de origem, o que pode impedir que o valor do campo lagTimeSeconds chegue a zero.

collectionCopy

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

collectionCopy .estimatedTotalBytes

inteiro

Número total estimado de bytes a serem copiados globalmente por todas as instâncias mongosync durante a cópia inicial da collection.

mongosync aproxima o número total estimado de bytes antes da migração e não atualiza esse valor durante o processo de sincronização. Esse valor não reflete as alterações feitas no cluster de origem durante a sincronização e não é um indicador preciso do progresso da migração. mongosync aproxima o número total estimado de bytes antes da migração e não atualiza esse valor durante o processo de sincronização. Esse valor não reflete as alterações feitas no cluster de origem durante a sincronização e não é um indicador preciso do progresso da migração.

collectionCopy .estimatedCopiedBytes

inteiro

Número estimado de bytes que foram copiados para o cluster de destino por essa instância mongosync durante a cópia inicial de collection.

Para calcular o progresso total estimado como uma porcentagem, adicione o valor do campo estimatedCopiedBytes para cada instância mongosync e divida o resultado pelo valor do campo estimatedTotalBytes . Em seguida, multiplique o resultado por 100.

O valor de estimatedCopiedBytes pode ser maior que o valor de estimatedTotalBytes devido a novas tentativas de operação. Uma comparação de estimatedTotalBytes e estimatedCopiedBytes não é um indicador preciso do progresso da migração. O valor de estimatedCopiedBytes pode ser maior que o valor de estimatedTotalBytes devido a novas tentativas de operação. Uma comparação de estimatedTotalBytes e estimatedCopiedBytes não é um indicador preciso do progresso da migração.

directionMapping

objeto

Descreve a direção de mapeamento para a sincronização, ou seja, os clusters de origem e destino.

directionMapping .Source

string

cluster de origem. Retornado no formulário <cluster name>: <host>:<port>.

directionMapping .Destination

string

Cluster de destino. Retornado no formulário <cluster name>: <host>:<port>.

mongosyncID

string

A string do identificador para a instância do mongosync .

coordinatorID

string

A string do identificador da instância do coordenador.

  • Quando o mongosync é coordenado por outra instância, este campo mostra a string do identificador para a instância do coordenador.

  • Quando mongosync é um coordenador ou executa sozinho, este campo retorna o mesmo valor que seu campo mongosyncID .

  • Quando mongosync inicia, este campo retorna null até que mongosync identifique o coordenador.

Se o mongosync encontrar um erro, o endpoint progress retornará o seguinte campo:

Campo
Tipo
Descrição

error

string

Se ocorreu um erro, fornece uma descrição detalhada do erro. Este campo é omitido quando a chamada para o endpoint é bem-sucedida

  • Quando mongosync está no estado IDLE , todos os campos de saída, exceto state e canCommit , são null.

  • Quando mongosync está no estado PAUSED , o campo lagTimeSeconds é null.

  • O endpoint não é atualizado automaticamente. Para obter o status atualizado, chame o endpoint progress novamente.

    Observação

    A partir de mongosync 1.7.3, mongosync pode 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 endpoint progress pode falhar. Se uma chamada progress falhar, é seguro tentar novamente.

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.

O exemplo a seguir retorna o status do processo de sincronização.

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

Voltar

iniciar

Nesta página