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

EventHubConsumerClient class

EventHubConsumerClient 用于使用事件中心的事件。

可通过多种方式创建 EventHubConsumerClient

  • 使用为事件中心实例创建的 SAS 策略中的连接字符串。
  • 使用为事件中心命名空间创建的 SAS 策略中的连接字符串,以及事件中心实例的名称
  • 使用完整的命名空间(如 <yournamespace>.servicebus.windows.net)和凭据对象。

(可选)还可以传递:

  • 用于配置重试策略或代理设置的选项包。
  • 客户端用于读取检查点的检查点存储,以确定应用程序重启时应从何处恢复接收事件的位置。 客户端还使用检查点存储对应用程序的多个实例进行负载均衡。

构造函数

EventHubConsumerClient(string, string, CheckpointStore, EventHubConsumerClientOptions)

EventHubConsumerClient 用于使用事件中心的事件。 options使用参数配置重试策略或代理设置。

EventHubConsumerClient(string, string, EventHubConsumerClientOptions)

EventHubConsumerClient 用于使用事件中心的事件。 options使用参数配置重试策略或代理设置。

EventHubConsumerClient(string, string, string, CheckpointStore, EventHubConsumerClientOptions)

EventHubConsumerClient 用于使用事件中心的事件。 options使用参数配置重试策略或代理设置。

EventHubConsumerClient(string, string, string, EventHubConsumerClientOptions)

EventHubConsumerClient 用于使用事件中心的事件。 options使用参数配置重试策略或代理设置。

EventHubConsumerClient(string, string, string, TokenCredential | NamedKeyCredential | SASCredential, CheckpointStore, EventHubConsumerClientOptions)

EventHubConsumerClient 用于使用事件中心的事件。 options使用参数配置重试策略或代理设置。

EventHubConsumerClient(string, string, string, TokenCredential | NamedKeyCredential | SASCredential, EventHubConsumerClientOptions)

EventHubConsumerClient 用于使用事件中心的事件。 options使用参数配置重试策略或代理设置。

属性

defaultConsumerGroupName

事件中心服务中默认使用者组的名称。

eventHubName

为其创建此客户端的事件中心实例的名称。

fullyQualifiedNamespace

为其创建此客户端的事件中心实例的完全限定命名空间。 这可能类似于 .servicebus.windows.net。

identifier

用于标识此 EventHubConsumerClient 的名称。 如果未指定或为空,将生成一个随机唯一的。

方法

close()

关闭与事件中心实例的 AMQP 连接,返回将在断开连接完成时解决的承诺。

getEventHubProperties(GetEventHubPropertiesOptions)

提供事件中心运行时信息。

getPartitionIds(GetPartitionIdsOptions)

提供与事件中心关联的每个分区的 ID。

getPartitionProperties(string, GetPartitionPropertiesOptions)

提供有关指定分区的状态的信息。

subscribe(string, SubscriptionEventHandlers, SubscribeOptions)

订阅单个分区中的事件。 对返回的对象调用 close () 以停止接收事件。

用法示例:

const client = new EventHubConsumerClient(consumerGroup, connectionString, eventHubName);
const subscription = client.subscribe(
 partitionId,
 {
   processEvents: (events, context) => { console.log("Received event count: ", events.length) },
   processError: (err, context) => { console.log("Error: ", err) }
 },
 { startPosition: earliestEventPosition }
);
subscribe(SubscriptionEventHandlers, SubscribeOptions)

订阅来自所有分区的事件。

如果向 提供 EventHubConsumerClient 检查点存储,并且应用程序有多个实例,则每个实例将订阅分区的子集,以便在分区之间均衡负载。

对返回的对象调用 close () 以停止接收事件。

用法示例:

const client = new EventHubConsumerClient(consumerGroup, connectionString, eventHubName);
const subscription = client.subscribe(
 {
   processEvents: (events, context) => { console.log("Received event count: ", events.length) },
   processError: (err, context) => { console.log("Error: ", err) }
 },
 { startPosition: earliestEventPosition }
);

构造函数详细信息

EventHubConsumerClient(string, string, CheckpointStore, EventHubConsumerClientOptions)

EventHubConsumerClient 用于使用事件中心的事件。 options使用参数配置重试策略或代理设置。

new EventHubConsumerClient(consumerGroup: string, connectionString: string, checkpointStore: CheckpointStore, options?: EventHubConsumerClientOptions)

参数

consumerGroup

string

要从中处理事件的使用者组的名称。

connectionString

string

用于连接到事件中心实例的连接字符串。 此连接字符串中应包含共享密钥属性和事件中心路径。 例如,'Endpoint=sb://my-servicebus-namespace.servicebus.windows.net/;SharedAccessKeyName=my-SA-name;SharedAccessKey=my-SA-key;EntityPath=my-event-hub-name'。

checkpointStore
CheckpointStore

客户端用于读取检查点的检查点存储,以确定应用程序重启时应从何处恢复接收事件的位置。 客户端还使用它对应用程序的多个实例进行负载均衡。

options
EventHubConsumerClientOptions

配置客户端时要应用的一组选项。

  • retryOptions :为客户端上的所有操作配置重试策略。 例如,{ "maxRetries": 4 }{ "maxRetries": 4, "retryDelayInMs": 30000 }
  • webSocketOptions:通过 Web 套接字配置 AMQP 连接的通道。
  • userAgent :要追加到传递给服务的内置用户代理字符串的字符串。

EventHubConsumerClient(string, string, EventHubConsumerClientOptions)

EventHubConsumerClient 用于使用事件中心的事件。 options使用参数配置重试策略或代理设置。

new EventHubConsumerClient(consumerGroup: string, connectionString: string, options?: EventHubConsumerClientOptions)

参数

consumerGroup

string

要从中处理事件的使用者组的名称。

connectionString

string

用于连接到事件中心实例的连接字符串。 此连接字符串中应包含共享密钥属性和事件中心路径。 例如,'Endpoint=sb://my-servicebus-namespace.servicebus.windows.net/;SharedAccessKeyName=my-SA-name;SharedAccessKey=my-SA-key;EntityPath=my-event-hub-name'。

options
EventHubConsumerClientOptions

配置客户端时要应用的一组选项。

  • retryOptions :为客户端上的所有操作配置重试策略。 例如,{ "maxRetries": 4 }{ "maxRetries": 4, "retryDelayInMs": 30000 }
  • webSocketOptions:通过 Web 套接字配置 AMQP 连接的通道。
  • userAgent :要追加到传递给服务的内置用户代理字符串的字符串。

EventHubConsumerClient(string, string, string, CheckpointStore, EventHubConsumerClientOptions)

EventHubConsumerClient 用于使用事件中心的事件。 options使用参数配置重试策略或代理设置。

new EventHubConsumerClient(consumerGroup: string, connectionString: string, eventHubName: string, checkpointStore: CheckpointStore, options?: EventHubConsumerClientOptions)

参数

consumerGroup

string

要从中处理事件的使用者组的名称。

connectionString

string

用于连接到事件中心命名空间的连接字符串。 共享密钥属性应包含在此连接字符串中,但不包含事件中心路径,例如“Endpoint=sb://my-servicebus-namespace.servicebus.windows.net/;SharedAccessKeyName=my-SA-name;SharedAccessKey=my-SA-key;'。

eventHubName

string

要将客户端连接到的特定事件中心的名称。

checkpointStore
CheckpointStore

客户端用于读取检查点的检查点存储,以确定应用程序重启时应从何处恢复接收事件的位置。 客户端还使用它对应用程序的多个实例进行负载均衡。

options
EventHubConsumerClientOptions

配置客户端时要应用的一组选项。

  • retryOptions :为客户端上的所有操作配置重试策略。 例如,{ "maxRetries": 4 }{ "maxRetries": 4, "retryDelayInMs": 30000 }
  • webSocketOptions:通过 Web 套接字配置 AMQP 连接的通道。
  • userAgent :要追加到传递给服务的内置用户代理字符串的字符串。

EventHubConsumerClient(string, string, string, EventHubConsumerClientOptions)

EventHubConsumerClient 用于使用事件中心的事件。 options使用参数配置重试策略或代理设置。

new EventHubConsumerClient(consumerGroup: string, connectionString: string, eventHubName: string, options?: EventHubConsumerClientOptions)

参数

consumerGroup

string

要从中处理事件的使用者组的名称。

connectionString

string

用于连接到事件中心命名空间的连接字符串。 共享密钥属性应包含在此连接字符串中,但不包含事件中心路径,例如“Endpoint=sb://my-servicebus-namespace.servicebus.windows.net/;SharedAccessKeyName=my-SA-name;SharedAccessKey=my-SA-key;'。

eventHubName

string

要将客户端连接到的特定事件中心的名称。

options
EventHubConsumerClientOptions

配置客户端时要应用的一组选项。

  • retryOptions :为客户端上的所有操作配置重试策略。 例如,{ "maxRetries": 4 }{ "maxRetries": 4, "retryDelayInMs": 30000 }
  • webSocketOptions:通过 Web 套接字配置 AMQP 连接的通道。
  • userAgent :要追加到传递给服务的内置用户代理字符串的字符串。

EventHubConsumerClient(string, string, string, TokenCredential | NamedKeyCredential | SASCredential, CheckpointStore, EventHubConsumerClientOptions)

EventHubConsumerClient 用于使用事件中心的事件。 options使用参数配置重试策略或代理设置。

new EventHubConsumerClient(consumerGroup: string, fullyQualifiedNamespace: string, eventHubName: string, credential: TokenCredential | NamedKeyCredential | SASCredential, checkpointStore: CheckpointStore, options?: EventHubConsumerClientOptions)

参数

consumerGroup

string

要从中处理事件的使用者组的名称。

fullyQualifiedNamespace

string

可能类似于 .servicebus.windows.net

eventHubName

string

要将客户端连接到的特定事件中心的名称。

credential

TokenCredential | NamedKeyCredential | SASCredential

客户端用于获取令牌的凭据对象,用于对Azure 事件中心服务的连接进行身份验证。 有关创建支持 AAD 身份验证的凭据,请参阅@azure/标识。AzureNamedKeyCredential如果要在不使用连接字符串的情况下传入 和 SharedAccessKeySharedAccessKeyName请使用 from @azure/core-auth。 这些字段分别映射到 name 中的 AzureNamedKeyCredentialkey 字段。 AzureSASCredential如果要在不使用连接字符串的情况下传入 ,SharedAccessSignature请使用 from @azure/core-auth。 此字段在 中AzureSASCredential映射到 signature

checkpointStore
CheckpointStore

客户端用于读取检查点的检查点存储,以确定应用程序重启时应从何处恢复接收事件的位置。 客户端还使用它对应用程序的多个实例进行负载均衡。

options
EventHubConsumerClientOptions

配置客户端时要应用的一组选项。

  • retryOptions :为客户端上的所有操作配置重试策略。 例如,{ "maxRetries": 4 }{ "maxRetries": 4, "retryDelayInMs": 30000 }
  • webSocketOptions:通过 Web 套接字配置 AMQP 连接的通道。
  • userAgent :要追加到传递给服务的内置用户代理字符串的字符串。

EventHubConsumerClient(string, string, string, TokenCredential | NamedKeyCredential | SASCredential, EventHubConsumerClientOptions)

EventHubConsumerClient 用于使用事件中心的事件。 options使用参数配置重试策略或代理设置。

new EventHubConsumerClient(consumerGroup: string, fullyQualifiedNamespace: string, eventHubName: string, credential: TokenCredential | NamedKeyCredential | SASCredential, options?: EventHubConsumerClientOptions)

参数

consumerGroup

string

要从中处理事件的使用者组的名称。

fullyQualifiedNamespace

string

可能类似于 .servicebus.windows.net

eventHubName

string

要将客户端连接到的特定事件中心的名称。

credential

TokenCredential | NamedKeyCredential | SASCredential

客户端用于获取令牌的凭据对象,用于对Azure 事件中心服务的连接进行身份验证。 有关创建支持 AAD 身份验证的凭据,请参阅@azure/标识。AzureNamedKeyCredential如果要在不使用连接字符串的情况下传入 和 SharedAccessKeySharedAccessKeyName请使用 from @azure/core-auth。 这些字段分别映射到 name 中的 AzureNamedKeyCredentialkey 字段。 AzureSASCredential如果要在不使用连接字符串的情况下传入 ,SharedAccessSignature请使用 from @azure/core-auth。 此字段在 中AzureSASCredential映射到 signature

options
EventHubConsumerClientOptions

配置客户端时要应用的一组选项。

  • retryOptions :为客户端上的所有操作配置重试策略。 例如,{ "maxRetries": 4 }{ "maxRetries": 4, "retryDelayInMs": 30000 }
  • webSocketOptions:通过 Web 套接字配置 AMQP 连接的通道。
  • userAgent :要追加到传递给服务的内置用户代理字符串的字符串。

属性详细信息

defaultConsumerGroupName

事件中心服务中默认使用者组的名称。

static defaultConsumerGroupName: string

属性值

string

eventHubName

为其创建此客户端的事件中心实例的名称。

string eventHubName

属性值

string

fullyQualifiedNamespace

为其创建此客户端的事件中心实例的完全限定命名空间。 这可能类似于 .servicebus.windows.net。

string fullyQualifiedNamespace

属性值

string

identifier

用于标识此 EventHubConsumerClient 的名称。 如果未指定或为空,将生成一个随机唯一的。

identifier: string

属性值

string

方法详细信息

close()

关闭与事件中心实例的 AMQP 连接,返回将在断开连接完成时解决的承诺。

function close(): Promise<void>

返回

Promise<void>

Promise

getEventHubProperties(GetEventHubPropertiesOptions)

提供事件中心运行时信息。

function getEventHubProperties(options?: GetEventHubPropertiesOptions): Promise<EventHubProperties>

参数

options
GetEventHubPropertiesOptions

要应用于操作调用的选项集。

返回

一个承诺,其中包含有关事件中心实例的信息。

getPartitionIds(GetPartitionIdsOptions)

提供与事件中心关联的每个分区的 ID。

function getPartitionIds(options?: GetPartitionIdsOptions): Promise<string[]>

参数

options
GetPartitionIdsOptions

要应用于操作调用的选项集。

返回

Promise<string[]>

一个承诺,使用表示与事件中心关联的每个分区的 ID 的字符串数组进行解析。

getPartitionProperties(string, GetPartitionPropertiesOptions)

提供有关指定分区的状态的信息。

function getPartitionProperties(partitionId: string, options?: GetPartitionPropertiesOptions): Promise<PartitionProperties>

参数

partitionId

string

需要其信息的分区的 ID。

options
GetPartitionPropertiesOptions

要应用于操作调用的选项集。

返回

一个承诺,该承诺通过有关分区 的状态的信息进行解析。

subscribe(string, SubscriptionEventHandlers, SubscribeOptions)

订阅单个分区中的事件。 对返回的对象调用 close () 以停止接收事件。

用法示例:

const client = new EventHubConsumerClient(consumerGroup, connectionString, eventHubName);
const subscription = client.subscribe(
 partitionId,
 {
   processEvents: (events, context) => { console.log("Received event count: ", events.length) },
   processError: (err, context) => { console.log("Error: ", err) }
 },
 { startPosition: earliestEventPosition }
);
function subscribe(partitionId: string, handlers: SubscriptionEventHandlers, options?: SubscribeOptions): Subscription

参数

partitionId

string

要订阅的分区的 ID。

handlers
SubscriptionEventHandlers

订阅生命周期的处理程序 - 分区的订阅初始化、接收事件、处理错误以及关闭对分区的订阅。

options
SubscribeOptions

配置接收事件的方式。 最常见的是 maxBatchSizemaxWaitTimeInSeconds ,用于控制事件流向为接收事件而提供的处理程序以及开始位置。 例如: { maxBatchSize: 20, maxWaitTimeInSeconds: 120, startPosition: { sequenceNumber: 123 } }

返回

subscribe(SubscriptionEventHandlers, SubscribeOptions)

订阅来自所有分区的事件。

如果向 提供 EventHubConsumerClient 检查点存储,并且应用程序有多个实例,则每个实例将订阅分区的子集,以便在分区之间均衡负载。

对返回的对象调用 close () 以停止接收事件。

用法示例:

const client = new EventHubConsumerClient(consumerGroup, connectionString, eventHubName);
const subscription = client.subscribe(
 {
   processEvents: (events, context) => { console.log("Received event count: ", events.length) },
   processError: (err, context) => { console.log("Error: ", err) }
 },
 { startPosition: earliestEventPosition }
);
function subscribe(handlers: SubscriptionEventHandlers, options?: SubscribeOptions): Subscription

参数

handlers
SubscriptionEventHandlers

订阅生命周期的处理程序 - 每个分区的订阅初始化、接收事件、处理错误以及每个分区的订阅关闭。

options
SubscribeOptions

配置接收事件的方式。 最常见的是 maxBatchSizemaxWaitTimeInSeconds ,用于控制事件流向为接收事件而提供的处理程序以及开始位置。 例如: { maxBatchSize: 20, maxWaitTimeInSeconds: 120, startPosition: { sequenceNumber: 123 } }

返回