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

문자열

mongosync 의 현재 상태 입니다. 가능한 상태에 대한 자세한 내용은 상태 설명을 참조하세요.

canCommit

부울

true 인 경우 커밋 요청이 성공함을 나타냅니다. 이는 초기 동기화가 완료되어 변경 이벤트를 적용하고 있음을 의미하기도 합니다.

canWrite

부울

true 인 경우 대상 cluster에서 쓰기가 허용됨을 나타냅니다. canWrite 이(가) false 인 동안에는 대상 cluster에 쓰지 않도록 합니다.

커밋 이 완료될 때까지 인덱스 유효성 검사가 계속됩니다.

info

문자열

동기화 진행 상황에 대한 추가 정보를 제공합니다. 가능한 info 값은 다음과 같습니다.

  • "collection copy"

  • "change event application"

  • "waiting for commit to complete"

  • "commit completed"

lagTimeSeconds

integer

mongosync 인스턴스에 대해 마지막으로 적용된 이벤트와 현재 최신 이벤트 시간 사이의 시간(초)입니다.

참고

mongosync 소스 클러스터에서 주기적으로 no-op 쓰기를 수행하므로 lagTimeSeconds 필드의 값이 0에 도달하지 못할 수 있습니다.

collectionCopy

객체

컬렉션에서 복사되는 데이터의 총량과 대상 클러스터로 이미 복사된 데이터의 양을 추정합니다.

collectionCopy .estimatedTotalBytes

integer

초기 collection의 복사 중에 모든 mongosync 인스턴스가 전역적으로 복사할 예상 총 바이트 수입니다.

mongosync 마이그레이션 전의 예상 총 바이트 수를 근사화하며 동기화 프로세스 중에 이 값을 업데이트 하지 않습니다. 이 값은 동기화 중에 소스 클러스터 에 적용된 변경 사항을 반영하지 않으며 마이그레이션 진행 상황을 정확하게 나타내는 지표가 아닙니다. mongosync 은 마이그레이션 전의 예상 총 바이트 수를 근사화하며 동기화 프로세스 중에 이 값을 업데이트 하지 않습니다. 이 값은 동기화 중에 소스 클러스터 에 적용된 변경 사항을 반영하지 않으며 마이그레이션 진행 상황을 정확하게 나타내는 지표가 아닙니다.

collectionCopy .estimatedCopiedBytes

integer

컬렉션의 초기 복사 중에 이 mongosync 인스턴스가 대상 클러스터로 복사한 예상 바이트 수입니다.

총 예상 진행률을 백분율로 계산하려면 각 mongosync 인스턴스의 estimatedCopiedBytes 필드 값을 더하고 결과를 estimatedTotalBytes 필드 값으로 나눕니다. 그런 다음 결과에 100을 곱합니다.

재시도된 작업으로 인해 estimatedCopiedBytes 값이 estimatedTotalBytes 값보다 클 수 있습니다. estimatedTotalBytesestimatedCopiedBytes 의 비교는 마이그레이션 진행 상황을 정확하게 나타내는 지표가 아닙니다. estimatedCopiedBytes 값은 재시도된 작업으로 인해 estimatedTotalBytes 값보다 클 수 있습니다. estimatedTotalBytesestimatedCopiedBytes 의 비교는 마이그레이션 진행 상황을 정확하게 나타내는 지표가 아닙니다.

directionMapping

객체

동기화에 대한 매핑 방향, 즉 소스 cluster 및 대상 cluster를 설명합니다.

directionMapping .Source

문자열

소스 클러스터. <cluster name>: <host>:<port> 형식으로 반환됩니다.

directionMapping .Destination

문자열

대상 cluster. <cluster name>: <host>:<port> 형식으로 반환됩니다.

mongosyncID

문자열

mongosync 인스턴스의 식별자 문자열입니다.

coordinatorID

문자열

코디네이터 인스턴스의 식별자 문자열입니다.

  • 다른 인스턴스에 의해 mongosync 이(가) 조정되는 경우 이 필드에는 코디네이터 인스턴스의 식별자 문자열이 표시됩니다.

  • mongosync 가 코디네이터이거나 단독으로 실행되는 경우 이 필드는 mongosyncID 필드와 동일한 값을 반환합니다.

  • mongosync 이(가) 시작되면 mongosync 이(가) 코디네이터를 식별할 때까지 이 필드가 null 을(를) 반환합니다.

mongosync 에 오류가 발생하면 progress 엔드포인트는 다음 필드를 반환합니다.

필드
유형
설명

error

문자열

오류가 발생한 경우 오류에 대한 자세한 설명을 제공합니다. 엔드포인트에 대한 호출이 성공하면 이 필드가 생략됩니다.

  • mongosyncIDLE 상태인 경우 statecanCommit 를 제외한 모든 출력 필드는 null 입니다.

  • mongosyncPAUSED 상태인 경우 lagTimeSeconds 필드는 null 입니다.

  • 엔드포인트가 자동 새로 고침되지 않습니다. 업데이트된 상태를 가져오려면 progress 엔드포인트를 다시 호출합니다.

    참고

    mongosync 1.7.3 부터 시작, 동기화 작업을 재개하거나 다시 시작할 때 mongosync 가 응답하는 데 최소 2분 정도 걸릴 수 있습니다. 이 시간 동안에는 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"
}
}
}

돌아가기

시작하기

이 페이지의 내용