SubscriptionEventHandlers interface
Interface que descreve as funções a serem implementadas pelo usuário que são invocadas pelo EventHubConsumerClient
quando o método subscribe()
é chamado para receber eventos do Hub de Eventos.
Propriedades
process |
A função invocada por Se o Se o |
process |
A função invocada por O Depois que o cliente concluir a execução dessa função, a função |
process |
A função invocada por O método Observação: é possível que os eventos recebidos sejam uma matriz vazia.
Isso pode acontecer se não houver novos eventos a serem recebidos no |
process |
A função invocada por O cliente começará a receber eventos para a partição somente depois de concluir a execução dessa função (se fornecido). Portanto, use essa função para realizar qualquer trabalho de instalação, incluindo tarefas assíncronas. |
Detalhes da propriedade
processClose
A função invocada por EventHubConsumerClient
sempre que a assinatura interrompe a leitura de eventos de uma partição. As informações sobre essa partição estarão disponíveis no PartitionContext
passado para a função processClose
.
Se o CloseReason
passado para essa função for OwnershipLost
, outra assinatura assumirá a leitura da mesma partição usando o mesmo grupo de consumidores. Isso é esperado se você tiver várias instâncias do aplicativo em execução e tiver passado o CheckpointStore
para o cliente para balancear a carga.
Se o CloseReason
for Shutdown
, isso indicará que subscription.close()
foi chamado ou ocorreu um erro. A menos que a assinatura tenha sido fechada explicitamente por meio de subscription.close()
, a assinatura tentará retomar a leitura de eventos do último ponto de verificação para a partição.
processClose?: ProcessCloseHandler
Valor da propriedade
processError
A função invocada por EventHubConsumerClient
para erros que ocorrem ao receber eventos ou ao executar qualquer uma das funções fornecidas pelo usuário passadas para o método subscribe()
.
O PartitionContext
passado para essa função indicará a partição que estava sendo processada quando o erro foi gerado. Nos casos em que um erro é gerado fora de eventos de processamento de uma partição(por exemplo, falha ao executar o balanceamento de carga), o partitionId
no contexto será uma cadeia de caracteres vazia.
Depois que o cliente concluir a execução dessa função, a função partitionClose
será invocada.
processError: ProcessErrorHandler
Valor da propriedade
processEvents
A função invocada por EventHubConsumerClient
quando um conjunto de eventos é recebido. O PartitionContext
passado para essa função pode ser usado para determinar de qual partição está sendo lida.
O método updateCheckpoint()
no contexto pode ser usado para atualizar pontos de verificação no CheckpointStore
(se um tiver sido fornecido ao cliente). Use isso em intervalos frequentes para marcar eventos que foram processados para que o cliente possa reiniciar desses pontos de verificação no caso de uma reinicialização ou recuperação de erro.
Observação: é possível que os eventos recebidos sejam uma matriz vazia.
Isso pode acontecer se não houver novos eventos a serem recebidos no maxWaitTimeInSeconds
, o que é padronizado para 60 segundos.
O maxWaitTimeInSeconds
pode ser alterado definindo-o no options
passado para subscribe()
.
processEvents: ProcessEventsHandler
Valor da propriedade
processInitialize
A função invocada por EventHubConsumerClient
cada vez que a assinatura está prestes a começar a ler de uma partição. O PartitionContext
passado para essa função pode ser usado para determinar de qual partição está prestes a ser lida.
O cliente começará a receber eventos para a partição somente depois de concluir a execução dessa função (se fornecido). Portanto, use essa função para realizar qualquer trabalho de instalação, incluindo tarefas assíncronas.
processInitialize?: ProcessInitializeHandler