Condividi tramite


SubscriptionEventHandlers interface

Interfaccia che descrive le funzioni da implementare dall'utente che vengono richiamate da EventHubConsumerClient quando viene chiamato il subscribe() metodo per ricevere eventi dall'hub eventi.

Proprietà

processClose

La funzione richiamata da EventHubConsumerClient ogni volta che la sottoscrizione interrompe la lettura degli eventi da una partizione. Le informazioni su questa partizione saranno disponibili nell'oggetto PartitionContext passato alla funzione processClose.

Se l'oggetto CloseReason passato a questa funzione è OwnershipLost, un'altra sottoscrizione ha acquisito la lettura dalla stessa partizione usando lo stesso gruppo di consumer. Questa operazione è prevista se sono in esecuzione più istanze dell'applicazione e sono state passate al CheckpointStore client per il bilanciamento del carico.

CloseReason Se è Shutdown, indica che subscription.close() è stato chiamato o si è verificato un errore. A meno che la sottoscrizione non sia stata chiusa in modo esplicito tramite subscription.close(), la sottoscrizione tenterà di riprendere la lettura degli eventi dall'ultimo checkpoint per la partizione.

processError

Funzione richiamata da EventHubConsumerClient per gli errori che si verificano durante la ricezione di eventi o durante l'esecuzione di una delle funzioni fornite dall'utente passate al subscribe() metodo .

L'oggetto PartitionContext passato a questa funzione indicherà la partizione che è stata elaborata quando è stato generato l'errore. Nei casi in cui viene generato un errore all'esterno degli eventi di elaborazione da una partizione(ad esempio, errore durante l'esecuzione del bilanciamento del carico), il valore partitionId nel contesto sarà una stringa vuota.

Al termine dell'esecuzione di questa funzione, la partitionClose funzione viene richiamata.

processEvents

Funzione richiamata da EventHubConsumerClient quando viene ricevuto un set di eventi. L'oggetto PartitionContext passato a questa funzione può essere usato per determinare da quale partizione viene letta.

Il updateCheckpoint() metodo sul contesto può essere usato per aggiornare i checkpoint in CheckpointStore (se ne è stato fornito uno al client). Utilizzare questa opzione in intervalli frequenti per contrassegnare gli eventi elaborati in modo che il client possa essere riavviato da tali checkpoint in caso di riavvio o ripristino degli errori.

Nota: è possibile che gli eventi ricevuti siano una matrice vuota. Questa situazione può verificarsi se non sono presenti nuovi eventi da ricevere in maxWaitTimeInSeconds, il cui valore predefinito è 60 secondi. L'oggetto maxWaitTimeInSeconds può essere modificato impostandolo nell'oggetto options passato a subscribe().

processInitialize

La funzione richiamata da EventHubConsumerClient ogni volta che la sottoscrizione sta per iniziare a leggere da una partizione. L'oggetto PartitionContext passato a questa funzione può essere usato per determinare da quale partizione sta per essere letta.

Il client inizierà a ricevere eventi per la partizione solo dopo aver completato l'esecuzione di questa funzione (se specificato). Usare quindi questa funzione per eseguire qualsiasi operazione di configurazione, incluse le attività asincrone.

Dettagli proprietà

processClose

La funzione richiamata da EventHubConsumerClient ogni volta che la sottoscrizione interrompe la lettura degli eventi da una partizione. Le informazioni su questa partizione saranno disponibili nell'oggetto PartitionContext passato alla funzione processClose.

Se l'oggetto CloseReason passato a questa funzione è OwnershipLost, un'altra sottoscrizione ha acquisito la lettura dalla stessa partizione usando lo stesso gruppo di consumer. Questa operazione è prevista se sono in esecuzione più istanze dell'applicazione e sono state passate al CheckpointStore client per il bilanciamento del carico.

CloseReason Se è Shutdown, indica che subscription.close() è stato chiamato o si è verificato un errore. A meno che la sottoscrizione non sia stata chiusa in modo esplicito tramite subscription.close(), la sottoscrizione tenterà di riprendere la lettura degli eventi dall'ultimo checkpoint per la partizione.

processClose?: ProcessCloseHandler

Valore della proprietà

processError

Funzione richiamata da EventHubConsumerClient per gli errori che si verificano durante la ricezione di eventi o durante l'esecuzione di una delle funzioni fornite dall'utente passate al subscribe() metodo .

L'oggetto PartitionContext passato a questa funzione indicherà la partizione che è stata elaborata quando è stato generato l'errore. Nei casi in cui viene generato un errore all'esterno degli eventi di elaborazione da una partizione(ad esempio, errore durante l'esecuzione del bilanciamento del carico), il valore partitionId nel contesto sarà una stringa vuota.

Al termine dell'esecuzione di questa funzione, la partitionClose funzione viene richiamata.

processError: ProcessErrorHandler

Valore della proprietà

processEvents

Funzione richiamata da EventHubConsumerClient quando viene ricevuto un set di eventi. L'oggetto PartitionContext passato a questa funzione può essere usato per determinare da quale partizione viene letta.

Il updateCheckpoint() metodo sul contesto può essere usato per aggiornare i checkpoint in CheckpointStore (se ne è stato fornito uno al client). Utilizzare questa opzione in intervalli frequenti per contrassegnare gli eventi elaborati in modo che il client possa essere riavviato da tali checkpoint in caso di riavvio o ripristino degli errori.

Nota: è possibile che gli eventi ricevuti siano una matrice vuota. Questa situazione può verificarsi se non sono presenti nuovi eventi da ricevere in maxWaitTimeInSeconds, il cui valore predefinito è 60 secondi. L'oggetto maxWaitTimeInSeconds può essere modificato impostandolo nell'oggetto options passato a subscribe().

processEvents: ProcessEventsHandler

Valore della proprietà

processInitialize

La funzione richiamata da EventHubConsumerClient ogni volta che la sottoscrizione sta per iniziare a leggere da una partizione. L'oggetto PartitionContext passato a questa funzione può essere usato per determinare da quale partizione sta per essere letta.

Il client inizierà a ricevere eventi per la partizione solo dopo aver completato l'esecuzione di questa funzione (se specificato). Usare quindi questa funzione per eseguire qualsiasi operazione di configurazione, incluse le attività asincrone.

processInitialize?: ProcessInitializeHandler

Valore della proprietà