SubscriptionEventHandlers interface
이벤트 허브에서 이벤트를 수신하기 위해 메서드를 호출할 때 subscribe()
에 의해 EventHubConsumerClient
호출되는 사용자가 구현할 함수를 설명하는 인터페이스입니다.
속성
process |
구독이
가 |
process |
이벤트를 수신하거나 메서드에 이 함수에 전달된 는 클라이언트가 이 함수 실행을 완료하면 함수가 |
process |
이벤트 집합이 수신될 때 에 의해
참고: 수신된 이벤트는 빈 배열일 수 있습니다.
이 문제는 에 수신 |
process |
구독이 클라이언트는 이 함수의 실행을 완료한 후에만 파티션에 대한 이벤트 수신을 시작합니다(제공된 경우). 따라서 이 함수를 사용하여 비동기 작업을 비롯한 모든 설정 작업을 수행합니다. |
속성 세부 정보
processClose
구독이 EventHubConsumerClient
파티션에서 이벤트 읽기를 중지할 때마다 호출되는 함수입니다. 이 파티션에 대한 정보는 함수processClose
에 전달된 에서 PartitionContext
사용할 수 있습니다.
CloseReason
이 함수에 전달된 가 OwnershipLost
이면 다른 구독이 동일한 소비자 그룹을 사용하여 동일한 파티션의 읽기를 인수했습니다. 이는 애플리케이션의 여러 인스턴스가 실행 중이고 부하를 분산하기 위해 를 클라이언트에 전달한 CheckpointStore
경우에 예상됩니다.
가 Shutdown
이 CloseReason
면 가 호출되었거나 오류가 발생했음을 나타냅니다subscription.close()
. 를 통해 subscription.close()
구독을 명시적으로 닫지 않는 한 구독은 파티션의 마지막 검사점에서 이벤트 읽기를 다시 시작하려고 시도합니다.
processClose?: ProcessCloseHandler
속성 값
processError
이벤트를 수신하거나 메서드에 EventHubConsumerClient
전달된 사용자 제공 함수를 실행할 때 발생하는 오류에 대해 에서 호출하는 subscribe()
함수입니다.
이 함수에 전달된 는 PartitionContext
오류가 throw되었을 때 처리 중인 파티션을 나타냅니다. 파티션의 이벤트 처리 외부에서 오류가 throw되는 경우(예: 부하 분산 수행 실패) partitionId
컨텍스트의 은 빈 문자열이 됩니다.
클라이언트가 이 함수 실행을 완료하면 함수가 partitionClose
호출됩니다.
processError: ProcessErrorHandler
속성 값
processEvents
이벤트 집합이 수신될 때 에 의해 EventHubConsumerClient
호출되는 함수입니다. 이 함수에 전달된 를 PartitionContext
사용하여 읽는 파티션을 확인할 수 있습니다.
updateCheckpoint()
컨텍스트의 메서드를 사용하여 에서 검사점(클라이언트에 CheckpointStore
제공된 경우)을 업데이트할 수 있습니다. 클라이언트가 다시 시작 또는 오류 복구 시 이러한 검사점에서 다시 시작할 수 있도록 처리된 이벤트를 표시하려면 이 간격을 자주 사용합니다.
참고: 수신된 이벤트는 빈 배열일 수 있습니다.
이 문제는 에 수신 maxWaitTimeInSeconds
할 새 이벤트가 없는 경우 발생할 수 있으며 기본값은 60초입니다.
에 maxWaitTimeInSeconds
전달subscribe()
된 에서 options
를 설정하여 를 변경할 수 있습니다.
processEvents: ProcessEventsHandler
속성 값
processInitialize
구독이 EventHubConsumerClient
파티션에서 읽기를 시작할 때마다 호출되는 함수입니다. 이 함수에 전달된 를 PartitionContext
사용하여 읽을 파티션을 확인할 수 있습니다.
클라이언트는 이 함수의 실행을 완료한 후에만 파티션에 대한 이벤트 수신을 시작합니다(제공된 경우). 따라서 이 함수를 사용하여 비동기 작업을 비롯한 모든 설정 작업을 수행합니다.
processInitialize?: ProcessInitializeHandler