SubscriptionEventHandlers interface
Rozhraní, které popisuje funkce, které mají být implementovány uživatelem, které jsou vyvolány EventHubConsumerClient
, když subscribe()
je volána metoda pro příjem událostí z centra událostí.
Vlastnosti
process |
Funkce vyvolá pokaždé,
Pokud je |
process |
Funkce vyvolaná pomocí Předaný Jakmile klient dokončí provádění této funkce, |
process |
Funkce vyvolána při Metodu Poznámka: Je možné, že přijaté události jsou prázdné pole.
K tomu může dojít, pokud nejsou k dispozici žádné nové události, které by bylo možné přijmout v |
process |
Funkce vyvolaná Klient začne přijímat události pro oddíl až po dokončení provádění této funkce (pokud je k dispozici). Proto tuto funkci použijte k provedení všech úloh nastavení, včetně asynchronních úloh. |
Podrobnosti vlastnosti
processClose
Funkce vyvolá pokaždé, EventHubConsumerClient
když odběr přestane číst události z oddílu. Informace o tomto oddílu budou k dispozici po předání PartitionContext
do funkce processClose
.
CloseReason
Pokud je OwnershipLost
předaná této funkci , pak čtení ze stejného oddílu pomocí stejné skupiny příjemců převzalo jiné předplatné. To se očekává, pokud máte spuštěno více instancí aplikace a předali CheckpointStore
jste klientovi nástroj pro vyrovnávání zatížení.
Pokud je CloseReason
Shutdown
, znamená to, že buď subscription.close()
bylo volána, nebo došlo k chybě. Pokud nebylo předplatné explicitně uzavřeno prostřednictvím subscription.close()
, pokusí se obnovit čtení událostí z posledního kontrolního bodu pro oddíl.
processClose?: ProcessCloseHandler
Hodnota vlastnosti
processError
Funkce vyvolaná pomocí EventHubConsumerClient
pro chyby, ke kterým dochází při přijímání událostí nebo při provádění jakékoli funkce poskytnuté uživatelem subscribe()
předané metodě.
Předaný PartitionContext
této funkci bude označovat oddíl, který se zpracovával, když došlo k chybě. V případech, kdy dojde k chybě mimo zpracování událostí z oddílu (např. selhání při vyrovnávání zatížení), partitionId
bude v kontextu prázdný řetězec.
Jakmile klient dokončí provádění této funkce, partitionClose
funkce se vyvolá.
processError: ProcessErrorHandler
Hodnota vlastnosti
processEvents
Funkce vyvolána při EventHubConsumerClient
přijetí sady událostí. Pomocí funkce předané PartitionContext
této funkci můžete určit, ze kterého oddílu se čte.
Metodu updateCheckpoint()
v kontextu lze použít k aktualizaci kontrolních bodů v objektu CheckpointStore
(pokud byl poskytnut klientovi). Tuto funkci můžete v častých intervalech použít k označení událostí, které byly zpracovány, aby se klient mohl z těchto kontrolních bodů restartovat v případě restartování nebo obnovení chyby.
Poznámka: Je možné, že přijaté události jsou prázdné pole.
K tomu může dojít, pokud nejsou k dispozici žádné nové události, které by bylo možné přijmout v maxWaitTimeInSeconds
, který je ve výchozím nastavení nastaven na 60 sekund.
Objekt maxWaitTimeInSeconds
lze změnit tak, že ho nastavíte options
v předané na subscribe()
.
processEvents: ProcessEventsHandler
Hodnota vlastnosti
processInitialize
Funkce vyvolaná EventHubConsumerClient
pokaždé, když se předplatné chystá začít číst z oddílu. Pomocí PartitionContext
příkazu předaného této funkci můžete určit, ze kterého oddílu se má číst.
Klient začne přijímat události pro oddíl až po dokončení provádění této funkce (pokud je k dispozici). Proto tuto funkci použijte k provedení všech úloh nastavení, včetně asynchronních úloh.
processInitialize?: ProcessInitializeHandler