SubscriptionEventHandlers interface
Gränssnitt som beskriver de funktioner som ska implementeras av användaren som anropas av EventHubConsumerClient
när subscribe()
metoden anropas för att ta emot händelser från Händelsehubb.
Egenskaper
process |
Funktionen som anropas
|
process |
Funktionen som anropas av När klienten har kört den här funktionen |
process |
Funktionen som anropas av Obs! Det är möjligt att mottagna händelser är en tom matris.
Detta kan inträffa om det inte finns några nya händelser att ta emot i |
process |
Funktionen som anropas varje |
Egenskapsinformation
processClose
Funktionen som anropas EventHubConsumerClient
varje gång prenumerationen slutar läsa händelser från en partition. Informationen om den här partitionen är tillgänglig för som PartitionContext
skickas till funktionen processClose
.
Om den CloseReason
som skickas till den här funktionen är OwnershipLost
har en annan prenumeration tagit över läsningen från samma partition med samma konsumentgrupp. Detta är förväntat om du har flera instanser av ditt program som körs och har skickat CheckpointStore
till klienten för belastningsutjämning.
CloseReason
Om är Shutdown
indikerar detta att antingen subscription.close()
anropades eller att ett fel uppstod. Om inte prenumerationen uttryckligen stängdes via subscription.close()
försöker prenumerationen återuppta läsningen av händelser från den senaste kontrollpunkten för partitionen.
processClose?: ProcessCloseHandler
Egenskapsvärde
processError
Funktionen som anropas av EventHubConsumerClient
för fel som inträffar vid mottagning av händelser eller vid körning av någon av de användarfunktioner som skickas till subscribe()
metoden.
Den PartitionContext
som skickas till den här funktionen anger partitionen som bearbetades när felet utlöstes. I fall där ett fel utlöses utanför bearbetningshändelser från en partition (t.ex. om belastningsutjämningen inte utförs) partitionId
är kontexten en tom sträng.
När klienten har kört den här funktionen partitionClose
anropas funktionen.
processError: ProcessErrorHandler
Egenskapsvärde
processEvents
Funktionen som anropas av EventHubConsumerClient
när en uppsättning händelser tas emot. Den PartitionContext
som skickas till den här funktionen kan användas för att avgöra vilken partition som läss från.
Metoden updateCheckpoint()
i kontexten kan användas för att uppdatera kontrollpunkter i CheckpointStore
(om en har angetts för klienten). Använd detta i frekventa intervall för att markera händelser som har bearbetats så att klienten kan starta om från sådana kontrollpunkter i händelse av omstart eller felåterställning.
Obs! Det är möjligt att mottagna händelser är en tom matris.
Detta kan inträffa om det inte finns några nya händelser att ta emot i maxWaitTimeInSeconds
, som standard är 60 sekunder.
maxWaitTimeInSeconds
kan ändras genom att ange den i som options
skickas till subscribe()
.
processEvents: ProcessEventsHandler
Egenskapsvärde
processInitialize
Funktionen som anropas varje EventHubConsumerClient
gång prenumerationen är på väg att börja läsa från en partition. Den PartitionContext
som skickas till den här funktionen kan användas för att avgöra vilken partition som ska läsas från.
Klienten börjar ta emot händelser för partitionen först när du har slutfört körningen av den här funktionen (om det finns). Använd därför den här funktionen för att utföra alla installationsarbete, inklusive asynkrona uppgifter.
processInitialize?: ProcessInitializeHandler