SubscriptionEventHandlers interface
Interface that describes the functions to be implemented by the user which are invoked by
the EventHubConsumerClient when the subscribe() method is called to receive events
from Event Hub.
Properties
| process |
The function invoked by If the If the |
| process |
The function invoked by The After the client completes executing this function, the |
| process |
The function invoked by The Note: It is possible for received events to be an empty array.
This can happen if there are no new events to receive
in the |
| process |
The function invoked by The client will start receiving events for the partition only after completing the execution of this function (if provided). Therefore, use this function to carry out any setup work including async tasks. |
Property Details
processClose
The function invoked by EventHubConsumerClient each time the subscription stops reading events from
a partition. The information on this partition will be available on the PartitionContext passed to the
function processClose.
If the CloseReason passed to this function is OwnershipLost, then another subscription has taken over
reading from the same partition using the same consumer group. This is expected if you have multiple
instances of your application running and have passed the CheckpointStore to the client to load balance.
If the CloseReason is Shutdown, this indicates that either subscription.close() was called, or an
error occured. Unless the subscription was explicitly closed via subscription.close(), the subscription
will attempt to resume reading events from the last checkpoint for the partition.
processClose?: ProcessCloseHandler
Property Value
processError
The function invoked by EventHubConsumerClient for errors that occur when receiving events
or when executing any of the user provided functions passed to the subscribe() method.
The PartitionContext passed to this function will indicate the partition that was being processed
when the error was thrown. In cases where an error is thrown outside of processing events from a
partition(e.g. failure to perform load balancing), the partitionId on the context will be an empty string.
After the client completes executing this function, the partitionClose function is invoked.
processError: ProcessErrorHandler
Property Value
processEvents
The function invoked by EventHubConsumerClient when a set of events is received. The
PartitionContext passed to this function can be used to determine which partition is being read from.
The updateCheckpoint() method on the context can be used to update checkpoints in the CheckpointStore
(if one was provided to the client). Use this in frequent intervals to mark events that have been processed
so that the client can restart from such checkpoints in the event of a restart or error recovery.
Note: It is possible for received events to be an empty array.
This can happen if there are no new events to receive
in the maxWaitTimeInSeconds, which is defaulted to 60 seconds.
The maxWaitTimeInSeconds can be changed by setting
it in the options passed to subscribe().
processEvents: ProcessEventsHandler
Property Value
processInitialize
The function invoked by EventHubConsumerClient each time the subscription is about to begin
reading from a partition. The PartitionContext passed to this function can be used to determine
which partition is about to be read from.
The client will start receiving events for the partition only after completing the execution of this function (if provided). Therefore, use this function to carry out any setup work including async tasks.
processInitialize?: ProcessInitializeHandler