你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

SubscriptionEventHandlers interface

接口,描述用户要实现的函数,在调用 方法以从事件中心接收事件时subscribe()调用EventHubConsumerClient这些函数。

属性

processClose

每次订阅停止从分区读取事件时调用 EventHubConsumerClient 的函数。 此分区上的信息将在传递给函数 processClose的 上PartitionContext可用。

CloseReason如果传递给此函数的 为 OwnershipLost,则另一个订阅已使用同一使用者组从同一分区接管读取。 如果应用程序的多个实例正在运行,并且已将 传递给 CheckpointStore 客户端进行负载均衡,则这是预期的。

CloseReason如果 为 Shutdown,则表示subscription.close()已调用或发生错误。 除非通过 subscription.close()显式关闭订阅,否则订阅将尝试从分区的最后一个检查点恢复读取事件。

processError

EventHubConsumerClient 接收事件或执行传递给 方法的任何用户提供的函数时发生的错误调用的 subscribe() 函数。

PartitionContext传递给此函数的 将指示引发错误时正在处理的分区。 如果从分区 (处理事件之外引发错误,例如无法执行负载均衡) , partitionId 则上下文上的 将是一个空字符串。

客户端完成执行此函数后,将调用 该 partitionClose 函数。

processEvents

接收一组事件时调用 EventHubConsumerClient 的函数。 PartitionContext传递给此函数的 可用于确定要从哪个分区读取。

updateCheckpoint()如果已向客户端) 提供检查点,则上下文上的 方法可用于更新 (中的CheckpointStore检查点。 在频繁的时间间隔内使用此标记已处理的事件,以便客户端可以在重启或错误恢复时从此类检查点重启。

注意:接收的事件可能是空数组。 如果 中 maxWaitTimeInSeconds没有要接收的新事件,则可能会发生这种情况,默认为 60 秒。 maxWaitTimeInSeconds可以通过在传递给 subscribe()的 中options设置来更改 。

processInitialize

每次订阅即将开始从分区读取时调用 EventHubConsumerClient 的函数。 PartitionContext传递给此函数的 可用于确定要从哪个分区读取。

只有在完成此函数的执行后,客户端才会开始接收分区的事件 ((如果) 提供)。 因此,使用此函数执行任何设置工作,包括异步任务。

属性详细信息

processClose

每次订阅停止从分区读取事件时调用 EventHubConsumerClient 的函数。 此分区上的信息将在传递给函数 processClose的 上PartitionContext可用。

CloseReason如果传递给此函数的 为 OwnershipLost,则另一个订阅已使用同一使用者组从同一分区接管读取。 如果应用程序的多个实例正在运行,并且已将 传递给 CheckpointStore 客户端进行负载均衡,则这是预期的。

CloseReason如果 为 Shutdown,则表示subscription.close()已调用或发生错误。 除非通过 subscription.close()显式关闭订阅,否则订阅将尝试从分区的最后一个检查点恢复读取事件。

processClose?: ProcessCloseHandler

属性值

processError

EventHubConsumerClient 接收事件或执行传递给 方法的任何用户提供的函数时发生的错误调用的 subscribe() 函数。

PartitionContext传递给此函数的 将指示引发错误时正在处理的分区。 如果从分区 (处理事件之外引发错误,例如无法执行负载均衡) , partitionId 则上下文上的 将是一个空字符串。

客户端完成执行此函数后,将调用 该 partitionClose 函数。

processError: ProcessErrorHandler

属性值

processEvents

接收一组事件时调用 EventHubConsumerClient 的函数。 PartitionContext传递给此函数的 可用于确定要从哪个分区读取。

updateCheckpoint()如果已向客户端) 提供检查点,则上下文上的 方法可用于更新 (中的CheckpointStore检查点。 在频繁的时间间隔内使用此标记已处理的事件,以便客户端可以在重启或错误恢复时从此类检查点重启。

注意:接收的事件可能是空数组。 如果 中 maxWaitTimeInSeconds没有要接收的新事件,则可能会发生这种情况,默认为 60 秒。 maxWaitTimeInSeconds可以通过在传递给 subscribe()的 中options设置来更改 。

processEvents: ProcessEventsHandler

属性值

processInitialize

每次订阅即将开始从分区读取时调用 EventHubConsumerClient 的函数。 PartitionContext传递给此函数的 可用于确定要从哪个分区读取。

只有在完成此函数的执行后,客户端才会开始接收分区的事件 ((如果) 提供)。 因此,使用此函数执行任何设置工作,包括异步任务。

processInitialize?: ProcessInitializeHandler

属性值