SNR#3590 센트리 수집기 RPC 호출에 기본 타임아웃 적용

버전: 4.0.2609.0

센트리 수집기가 응답하지 않으면 정책 동기화가 무기한 멈추던 문제를 개선했습니다. 이제 센트리 RPC 호출에 기본 타임아웃을 적용해, 일부 센트리가 응답하지 않아도 나머지 센트리의 정책 동기화는 계속 진행됩니다.

  • 원인: 센트리 RPC 호출에 기본 타임아웃이 없어, 응답이 오지 않으면 호출이 끝나지 않고 계속 대기했습니다. 이 때문에 응답하지 않는 센트리 한 대가 나머지 센트리의 정책 반영(수집기 추가·제거, 시작·정지 등)까지 함께 막았습니다.
  • 해결: 수집기 일반 작업에는 10초, 패키지·번들 같은 장기 작업에는 60초의 기본 타임아웃을 적용했습니다. 수집기를 정지할 때처럼 사용자가 대기 시간을 지정하는 작업에는 그 시간에 RPC 응답 여유 시간을 더해 적용합니다.
  • 타임아웃이 발생해도 일반적인 네트워크 오류와 동일하게 처리하므로 별도 조치가 필요하지 않습니다. 일시적인 실패는 다음 센트리 핸드셰이크나 정책 동기화 사이클에서 자동으로 재시도합니다.
  • 아래 시스템 속성으로 타임아웃 값을 조정할 수 있습니다.
속성설명기본값
SENTRY_RPC_TIMEOUT센트리 RPC 호출 기본 타임아웃(ms)10000
SENTRY_RPC_LONG_TIMEOUT패키지 설치/제거/전환, 번들 검증 등 장기 작업 타임아웃(ms)60000
SENTRY_RPC_STOP_BUFFER수집기를 정지할 때 드레인 대기 시간에 더하는 여유 시간(ms)5000