SubscriptionEventHandlers interface

Olay Hub'ından olay almak için EventHubConsumerClient yöntemi çağrıldığında subscribe() tarafından çağrılan kullanıcı tarafından uygulanacak işlevleri açıklayan arabirim.

Özellikler

processClose

Abonelik bir bölümden olayları okumayı her durdurduğunda EventHubConsumerClient tarafından çağrılan işlev. Bu bölümdeki bilgiler, PartitionContextişlevine geçirilen processClose kullanılabilir.

Bu işleve geçirilen CloseReasonOwnershipLostise, başka bir abonelik aynı tüketici grubunu kullanarak aynı bölümden okumayı devralmıştır. Uygulamanızın birden çok örneği çalışıyorsa ve yük dengelemesi için CheckpointStore istemciye geçirdiyseniz bu beklenen bir durumdur.

CloseReason Shutdownise bu, subscription.close() çağrıldığını veya bir hata oluştuğunun göstergesidir. Abonelik subscription.close()aracılığıyla açıkça kapatılmadığı sürece, abonelik bölümün son denetim noktasından okuma olaylarını sürdürmeye çalışır.

processError

olaylar alınırken veya kullanıcı tarafından sağlanan işlevlerden herhangi biri yürütülürken oluşan hatalar için EventHubConsumerClient tarafından çağrılan işlev subscribe() yöntemine geçirilir.

Bu işleve geçirilen PartitionContext, hata oluştuğunda işlenen bölümü gösterir. Bir bölümden gelen olayları işlemenin dışında bir hatanın oluştuğu durumlarda (örneğin yük dengelemenin başarısız olması), bağlam üzerindeki partitionId boş bir dize olur.

İstemci bu işlevi yürütmeyi tamamladıktan sonra partitionClose işlevi çağrılır.

processEvents

bir dizi olay alındığında EventHubConsumerClient tarafından çağrılan işlev. Bu işleve geçirilen PartitionContext, hangi bölümden okunmakta olduğunu belirlemek için kullanılabilir.

Bağlam üzerindeki updateCheckpoint() yöntemi, CheckpointStore (istemciye sağlandıysa) denetim noktalarını güncelleştirmek için kullanılabilir. İstemcinin yeniden başlatma veya hata kurtarma durumunda bu tür denetim noktalarından yeniden başlatabilmesi için, işlenen olayları işaretlemek için bunu sık aralıklarla kullanın.

Not: Alınan olayların boş bir dizi olması mümkündür. varsayılan olarak 60 saniye olan maxWaitTimeInSecondsyeni olay alınmazsa bu durum oluşabilir. maxWaitTimeInSeconds, optionsgeçirilen subscribe() ayarlanarak değiştirilebilir.

processInitialize

Abonelik bir bölümden okumaya başlamak üzere olduğunda EventHubConsumerClient tarafından çağrılan işlev. Bu işleve geçirilen PartitionContext, hangi bölümden okunmak üzere olduğunu belirlemek için kullanılabilir.

İstemci, bölüm için olayları almaya ancak bu işlevin yürütülmesini tamamladıktan sonra (sağlanırsa) başlar. Bu nedenle, zaman uyumsuz görevler de dahil olmak üzere tüm kurulum çalışmalarını gerçekleştirmek için bu işlevi kullanın.

Özellik Ayrıntıları

processClose

Abonelik bir bölümden olayları okumayı her durdurduğunda EventHubConsumerClient tarafından çağrılan işlev. Bu bölümdeki bilgiler, PartitionContextişlevine geçirilen processClose kullanılabilir.

Bu işleve geçirilen CloseReasonOwnershipLostise, başka bir abonelik aynı tüketici grubunu kullanarak aynı bölümden okumayı devralmıştır. Uygulamanızın birden çok örneği çalışıyorsa ve yük dengelemesi için CheckpointStore istemciye geçirdiyseniz bu beklenen bir durumdur.

CloseReason Shutdownise bu, subscription.close() çağrıldığını veya bir hata oluştuğunun göstergesidir. Abonelik subscription.close()aracılığıyla açıkça kapatılmadığı sürece, abonelik bölümün son denetim noktasından okuma olaylarını sürdürmeye çalışır.

processClose?: ProcessCloseHandler

Özellik Değeri

processError

olaylar alınırken veya kullanıcı tarafından sağlanan işlevlerden herhangi biri yürütülürken oluşan hatalar için EventHubConsumerClient tarafından çağrılan işlev subscribe() yöntemine geçirilir.

Bu işleve geçirilen PartitionContext, hata oluştuğunda işlenen bölümü gösterir. Bir bölümden gelen olayları işlemenin dışında bir hatanın oluştuğu durumlarda (örneğin yük dengelemenin başarısız olması), bağlam üzerindeki partitionId boş bir dize olur.

İstemci bu işlevi yürütmeyi tamamladıktan sonra partitionClose işlevi çağrılır.

processError: ProcessErrorHandler

Özellik Değeri

processEvents

bir dizi olay alındığında EventHubConsumerClient tarafından çağrılan işlev. Bu işleve geçirilen PartitionContext, hangi bölümden okunmakta olduğunu belirlemek için kullanılabilir.

Bağlam üzerindeki updateCheckpoint() yöntemi, CheckpointStore (istemciye sağlandıysa) denetim noktalarını güncelleştirmek için kullanılabilir. İstemcinin yeniden başlatma veya hata kurtarma durumunda bu tür denetim noktalarından yeniden başlatabilmesi için, işlenen olayları işaretlemek için bunu sık aralıklarla kullanın.

Not: Alınan olayların boş bir dizi olması mümkündür. varsayılan olarak 60 saniye olan maxWaitTimeInSecondsyeni olay alınmazsa bu durum oluşabilir. maxWaitTimeInSeconds, optionsgeçirilen subscribe() ayarlanarak değiştirilebilir.

processEvents: ProcessEventsHandler

Özellik Değeri

processInitialize

Abonelik bir bölümden okumaya başlamak üzere olduğunda EventHubConsumerClient tarafından çağrılan işlev. Bu işleve geçirilen PartitionContext, hangi bölümden okunmak üzere olduğunu belirlemek için kullanılabilir.

İstemci, bölüm için olayları almaya ancak bu işlevin yürütülmesini tamamladıktan sonra (sağlanırsa) başlar. Bu nedenle, zaman uyumsuz görevler de dahil olmak üzere tüm kurulum çalışmalarını gerçekleştirmek için bu işlevi kullanın.

processInitialize?: ProcessInitializeHandler

Özellik Değeri