EventHubConsumerClient class
A EventHubConsumerClient
classe é utilizada para consumir eventos de um Hub de Eventos.
Existem várias formas de criar um EventHubConsumerClient
- Utilize a cadeia de ligação da política SAS criada para a instância do Hub de Eventos.
- Utilize a cadeia de ligação da política SAS criada para o espaço de nomes do Hub de Eventos e o nome da instância do Hub de Eventos
- Utilize o espaço de nomes completo, como
<yournamespace>.servicebus.windows.net
, e um objeto de credenciais.
Opcionalmente, também pode transmitir:
- Um saco de opções para configurar a política de repetição ou as definições de proxy.
- Um arquivo de pontos de verificação que é utilizado pelo cliente para ler pontos de verificação para determinar a posição de onde deve retomar a receção de eventos quando a sua aplicação é reiniciada. O arquivo de pontos de verificação também é utilizado pelo cliente para fazer o balanceamento de carga de várias instâncias da sua aplicação.
Construtores
Event |
A |
Event |
A |
Event |
A |
Event |
A |
Event |
A |
Event |
A |
Propriedades
default |
O nome do grupo de consumidores predefinido no serviço Hubs de Eventos. |
event |
O nome da instância do Hub de Eventos para a qual este cliente é criado. |
fully |
O espaço de nomes completamente qualificado da instância do Hub de Eventos para a qual este cliente é criado. É provável que seja semelhante a .servicebus.windows.net. |
identifier | O nome utilizado para identificar este EventHubConsumerClient. Se não for especificado ou vazio, será gerado um exclusivo aleatório. |
Métodos
close() | Fecha a ligação AMQP à instância do Hub de Eventos, devolvendo uma promessa que será resolvida quando a desconexão estiver concluída. |
get |
Fornece as informações de runtime do Hub de Eventos. |
get |
Fornece o ID para cada partição associada ao Hub de Eventos. |
get |
Fornece informações sobre o estado da partição especificada. |
subscribe(string, Subscription |
Subscreva eventos de uma única partição. Chame close() no objeto devolvido para parar de receber eventos. Utilização de exemplo:
|
subscribe(Subscription |
Subscreva eventos de todas as partições. Se o arquivo de pontos de verificação for fornecido ao Chame close() no objeto devolvido para parar de receber eventos. Utilização de exemplo:
|
Detalhes do Construtor
EventHubConsumerClient(string, string, CheckpointStore, EventHubConsumerClientOptions)
A EventHubConsumerClient
classe é utilizada para consumir eventos de um Hub de Eventos.
Utilize o options
parmeter para configurar a política de repetição ou as definições de proxy.
new EventHubConsumerClient(consumerGroup: string, connectionString: string, checkpointStore: CheckpointStore, options?: EventHubConsumerClientOptions)
Parâmetros
- consumerGroup
-
string
O nome do grupo de consumidores a partir do qual pretende processar eventos.
- connectionString
-
string
A cadeia de ligação a utilizar para ligar à instância do Hub de Eventos. Espera-se que as propriedades da chave partilhada e o caminho do Hub de Eventos estejam contidos nesta cadeia de ligação. por exemplo, "Endpoint=sb://my-servicebus-namespace.servicebus.windows.net/;SharedAccessKeyName=my-SA-name; SharedAccessKey=my-SA-key; EntityPath=my-event-hub-name".
- checkpointStore
- CheckpointStore
Um arquivo de pontos de verificação que é utilizado pelo cliente para ler pontos de verificação para determinar a posição de onde deve retomar a receção de eventos quando a aplicação é reiniciada. Também é utilizado pelo cliente para fazer o balanceamento de carga de várias instâncias da sua aplicação.
- options
- EventHubConsumerClientOptions
Um conjunto de opções a aplicar ao configurar o cliente.
-
retryOptions
: configura a política de repetição para todas as operações no cliente. Por exemplo,{ "maxRetries": 4 }
ou{ "maxRetries": 4, "retryDelayInMs": 30000 }
. -
webSocketOptions
: configura a canalização da ligação AMQP através de Sockets Web. -
userAgent
: uma cadeia para acrescentar à cadeia de agente de utilizador incorporada que é transmitida ao serviço.
EventHubConsumerClient(string, string, EventHubConsumerClientOptions)
A EventHubConsumerClient
classe é utilizada para consumir eventos de um Hub de Eventos.
Utilize o options
parmeter para configurar a política de repetição ou as definições de proxy.
new EventHubConsumerClient(consumerGroup: string, connectionString: string, options?: EventHubConsumerClientOptions)
Parâmetros
- consumerGroup
-
string
O nome do grupo de consumidores a partir do qual pretende processar eventos.
- connectionString
-
string
A cadeia de ligação a utilizar para ligar à instância do Hub de Eventos. Espera-se que as propriedades da chave partilhada e o caminho do Hub de Eventos estejam contidos nesta cadeia de ligação. por exemplo, "Endpoint=sb://my-servicebus-namespace.servicebus.windows.net/;SharedAccessKeyName=my-SA-name; SharedAccessKey=my-SA-key; EntityPath=my-event-hub-name".
- options
- EventHubConsumerClientOptions
Um conjunto de opções a aplicar ao configurar o cliente.
-
retryOptions
: configura a política de repetição para todas as operações no cliente. Por exemplo,{ "maxRetries": 4 }
ou{ "maxRetries": 4, "retryDelayInMs": 30000 }
. -
webSocketOptions
: configura a canalização da ligação AMQP através de Sockets Web. -
userAgent
: uma cadeia para acrescentar à cadeia de agente de utilizador incorporada que é transmitida ao serviço.
EventHubConsumerClient(string, string, string, CheckpointStore, EventHubConsumerClientOptions)
A EventHubConsumerClient
classe é utilizada para consumir eventos de um Hub de Eventos.
Utilize o options
parmeter para configurar a política de repetição ou as definições de proxy.
new EventHubConsumerClient(consumerGroup: string, connectionString: string, eventHubName: string, checkpointStore: CheckpointStore, options?: EventHubConsumerClientOptions)
Parâmetros
- consumerGroup
-
string
O nome do grupo de consumidores a partir do qual pretende processar eventos.
- connectionString
-
string
A cadeia de ligação a utilizar para ligar ao espaço de nomes dos Hubs de Eventos. Espera-se que as propriedades da chave partilhada estejam contidas nesta cadeia de ligação, mas não o caminho do Hub de Eventos, por exemplo, "Endpoint=sb://my-servicebus-namespace.servicebus.windows.net/;SharedAccessKeyName=my-SA-name; SharedAccessKey=my-SA-key;'.
- eventHubName
-
string
O nome do Hub de Eventos específico ao qual ligar o cliente.
- checkpointStore
- CheckpointStore
Um arquivo de pontos de verificação que é utilizado pelo cliente para ler pontos de verificação para determinar a posição de onde deve retomar a receção de eventos quando a sua aplicação é reiniciada. Também é utilizado pelo cliente para fazer o balanceamento de carga de várias instâncias da sua aplicação.
- options
- EventHubConsumerClientOptions
Um conjunto de opções a aplicar ao configurar o cliente.
-
retryOptions
: configura a política de repetição para todas as operações no cliente. Por exemplo,{ "maxRetries": 4 }
ou{ "maxRetries": 4, "retryDelayInMs": 30000 }
. -
webSocketOptions
: configura a canalização da ligação AMQP através de Sockets Web. -
userAgent
: uma cadeia para acrescentar à cadeia de agente de utilizador incorporada que é transmitida ao serviço.
EventHubConsumerClient(string, string, string, EventHubConsumerClientOptions)
A EventHubConsumerClient
classe é utilizada para consumir eventos de um Hub de Eventos.
Utilize o options
parmeter para configurar a política de repetição ou as definições de proxy.
new EventHubConsumerClient(consumerGroup: string, connectionString: string, eventHubName: string, options?: EventHubConsumerClientOptions)
Parâmetros
- consumerGroup
-
string
O nome do grupo de consumidores a partir do qual pretende processar eventos.
- connectionString
-
string
A cadeia de ligação a utilizar para ligar ao espaço de nomes dos Hubs de Eventos. Espera-se que as propriedades da chave partilhada estejam contidas nesta cadeia de ligação, mas não o caminho do Hub de Eventos, por exemplo, "Endpoint=sb://my-servicebus-namespace.servicebus.windows.net/;SharedAccessKeyName=my-SA-name; SharedAccessKey=my-SA-key;'.
- eventHubName
-
string
O nome do Hub de Eventos específico ao qual ligar o cliente.
- options
- EventHubConsumerClientOptions
Um conjunto de opções a aplicar ao configurar o cliente.
-
retryOptions
: configura a política de repetição para todas as operações no cliente. Por exemplo,{ "maxRetries": 4 }
ou{ "maxRetries": 4, "retryDelayInMs": 30000 }
. -
webSocketOptions
: configura a canalização da ligação AMQP através de Sockets Web. -
userAgent
: uma cadeia para acrescentar à cadeia de agente de utilizador incorporada que é transmitida ao serviço.
EventHubConsumerClient(string, string, string, TokenCredential | NamedKeyCredential | SASCredential, CheckpointStore, EventHubConsumerClientOptions)
A EventHubConsumerClient
classe é utilizada para consumir eventos de um Hub de Eventos.
Utilize o options
parmeter para configurar a política de repetição ou as definições de proxy.
new EventHubConsumerClient(consumerGroup: string, fullyQualifiedNamespace: string, eventHubName: string, credential: TokenCredential | NamedKeyCredential | SASCredential, checkpointStore: CheckpointStore, options?: EventHubConsumerClientOptions)
Parâmetros
- consumerGroup
-
string
O nome do grupo de consumidores a partir do qual pretende processar eventos.
- fullyQualifiedNamespace
-
string
O espaço de nomes completo que provavelmente será semelhante a .servicebus.windows.net
- eventHubName
-
string
O nome do Hub de Eventos específico ao qual ligar o cliente.
- credential
Um objeto de credencial utilizado pelo cliente para obter o token para autenticar a ligação com o serviço Hubs de Eventos do Azure.
Veja @azure/identidade para criar credenciais que suportem a autenticação do AAD. Utilize a AzureNamedKeyCredential
de @azure/core-auth se quiser transmitir uma SharedAccessKeyName
e SharedAccessKey
sem utilizar uma cadeia de ligação. Estes campos mapeiam para o name
campo e key
, respetivamente, em AzureNamedKeyCredential
.
Utilize a AzureSASCredential
de @azure/core-auth se quiser transmitir uma SharedAccessSignature
sem utilizar uma cadeia de ligação. Este campo mapeia para signature
em AzureSASCredential
.
- checkpointStore
- CheckpointStore
Um arquivo de pontos de verificação que é utilizado pelo cliente para ler pontos de verificação para determinar a posição de onde deve retomar a receção de eventos quando a sua aplicação é reiniciada. Também é utilizado pelo cliente para fazer o balanceamento de carga de várias instâncias da sua aplicação.
- options
- EventHubConsumerClientOptions
Um conjunto de opções a aplicar ao configurar o cliente.
-
retryOptions
: configura a política de repetição para todas as operações no cliente. Por exemplo,{ "maxRetries": 4 }
ou{ "maxRetries": 4, "retryDelayInMs": 30000 }
. -
webSocketOptions
: configura a canalização da ligação AMQP através de Sockets Web. -
userAgent
: uma cadeia para acrescentar à cadeia de agente de utilizador incorporada que é transmitida ao serviço.
EventHubConsumerClient(string, string, string, TokenCredential | NamedKeyCredential | SASCredential, EventHubConsumerClientOptions)
A EventHubConsumerClient
classe é utilizada para consumir eventos de um Hub de Eventos.
Utilize o options
parmeter para configurar a política de repetição ou as definições de proxy.
new EventHubConsumerClient(consumerGroup: string, fullyQualifiedNamespace: string, eventHubName: string, credential: TokenCredential | NamedKeyCredential | SASCredential, options?: EventHubConsumerClientOptions)
Parâmetros
- consumerGroup
-
string
O nome do grupo de consumidores a partir do qual pretende processar eventos.
- fullyQualifiedNamespace
-
string
O espaço de nomes completo que provavelmente será semelhante a .servicebus.windows.net
- eventHubName
-
string
O nome do Hub de Eventos específico ao qual ligar o cliente.
- credential
Um objeto de credencial utilizado pelo cliente para obter o token para autenticar a ligação com o serviço Hubs de Eventos do Azure.
Veja @azure/identidade para criar credenciais que suportem a autenticação do AAD. Utilize a AzureNamedKeyCredential
de @azure/core-auth se quiser transmitir uma SharedAccessKeyName
e SharedAccessKey
sem utilizar uma cadeia de ligação. Estes campos mapeiam para o name
campo e key
, respetivamente, em AzureNamedKeyCredential
.
Utilize a AzureSASCredential
de @azure/core-auth se quiser transmitir uma SharedAccessSignature
sem utilizar uma cadeia de ligação. Este campo mapeia para signature
em AzureSASCredential
.
- options
- EventHubConsumerClientOptions
Um conjunto de opções a aplicar ao configurar o cliente.
-
retryOptions
: configura a política de repetição para todas as operações no cliente. Por exemplo,{ "maxRetries": 4 }
ou{ "maxRetries": 4, "retryDelayInMs": 30000 }
. -
webSocketOptions
: configura a canalização da ligação AMQP através de Sockets Web. -
userAgent
: uma cadeia para acrescentar à cadeia de agente de utilizador incorporada que é transmitida ao serviço.
Detalhes de Propriedade
defaultConsumerGroupName
O nome do grupo de consumidores predefinido no serviço Hubs de Eventos.
static defaultConsumerGroupName: string
Valor de Propriedade
string
eventHubName
O nome da instância do Hub de Eventos para a qual este cliente é criado.
string eventHubName
Valor de Propriedade
string
fullyQualifiedNamespace
O espaço de nomes completamente qualificado da instância do Hub de Eventos para a qual este cliente é criado. É provável que seja semelhante a .servicebus.windows.net.
string fullyQualifiedNamespace
Valor de Propriedade
string
identifier
O nome utilizado para identificar este EventHubConsumerClient. Se não for especificado ou vazio, será gerado um exclusivo aleatório.
identifier: string
Valor de Propriedade
string
Detalhes de Método
close()
Fecha a ligação AMQP à instância do Hub de Eventos, devolvendo uma promessa que será resolvida quando a desconexão estiver concluída.
function close(): Promise<void>
Devoluções
Promise<void>
Promessa
getEventHubProperties(GetEventHubPropertiesOptions)
Fornece as informações de runtime do Hub de Eventos.
function getEventHubProperties(options?: GetEventHubPropertiesOptions): Promise<EventHubProperties>
Parâmetros
- options
- GetEventHubPropertiesOptions
O conjunto de opções a aplicar à chamada de operação.
Devoluções
Promise<EventHubProperties>
Uma promessa que resolve com informações sobre a instância do Hub de Eventos.
getPartitionIds(GetPartitionIdsOptions)
Fornece o ID para cada partição associada ao Hub de Eventos.
function getPartitionIds(options?: GetPartitionIdsOptions): Promise<string[]>
Parâmetros
- options
- GetPartitionIdsOptions
O conjunto de opções a aplicar à chamada de operação.
Devoluções
Promise<string[]>
Uma promessa que resolve com uma Matriz de cadeias que representa o ID de cada partição associada ao Hub de Eventos.
getPartitionProperties(string, GetPartitionPropertiesOptions)
Fornece informações sobre o estado da partição especificada.
function getPartitionProperties(partitionId: string, options?: GetPartitionPropertiesOptions): Promise<PartitionProperties>
Parâmetros
- partitionId
-
string
O ID da partição para a qual são necessárias informações.
- options
- GetPartitionPropertiesOptions
O conjunto de opções a aplicar à chamada de operação.
Devoluções
Promise<PartitionProperties>
Uma promessa que resolve com informações sobre o estado da partição .
subscribe(string, SubscriptionEventHandlers, SubscribeOptions)
Subscreva eventos de uma única partição. Chame close() no objeto devolvido para parar de receber eventos.
Utilização de exemplo:
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
Parâmetros
- partitionId
-
string
O ID da partição a subscrever.
- handlers
- SubscriptionEventHandlers
Processadores para o ciclo de vida da subscrição – inicialização da subscrição da partição, receção de eventos, processamento de erros e encerramento de uma subscrição para a partição.
- options
- SubscribeOptions
Configura a forma como os eventos são recebidos.
Os mais comuns são maxBatchSize
e maxWaitTimeInSeconds
controlam o fluxo de eventos para o processador fornecido para receber eventos, bem como a posição de início. Por exemplo, { maxBatchSize: 20, maxWaitTimeInSeconds: 120, startPosition: { sequenceNumber: 123 } }
Devoluções
subscribe(SubscriptionEventHandlers, SubscribeOptions)
Subscreva eventos de todas as partições.
Se o arquivo de pontos de verificação for fornecido ao EventHubConsumerClient
e existirem várias instâncias da sua aplicação, cada instância subscreverá um subconjunto das partições de modo a que a carga seja equilibrada entre elas.
Chame close() no objeto devolvido para parar de receber eventos.
Utilização de exemplo:
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
Parâmetros
- handlers
- SubscriptionEventHandlers
Processadores para o ciclo de vida da subscrição – inicialização da subscrição por partição, receção de eventos, processamento de erros e encerramento de uma subscrição por partição.
- options
- SubscribeOptions
Configura a forma como os eventos são recebidos.
Os mais comuns são maxBatchSize
e maxWaitTimeInSeconds
controlam o fluxo de eventos para o processador fornecido para receber eventos, bem como a posição de início. Por exemplo, { maxBatchSize: 20, maxWaitTimeInSeconds: 120, startPosition: { sequenceNumber: 123 } }