EventHubConsumerClient class
Класс EventHubConsumerClient
используется для получения событий из концентратора событий.
Существует несколько способов создания EventHubConsumerClient
- Используйте строку подключения из политики SAS, созданной для экземпляра концентратора событий.
- Используйте строку подключения из политики SAS, созданной для пространства имен концентратора событий, и имя экземпляра концентратора событий.
- Используйте полное пространство имен, например
<yournamespace>.servicebus.windows.net
, и объект учетных данных.
При необходимости можно также передать:
- Контейнер параметров для настройки политики повтора или параметров прокси-сервера.
- Хранилище контрольных точек, которое используется клиентом для чтения контрольных точек, чтобы определить расположение, из которого следует возобновить получение событий при перезапуске приложения. Хранилище контрольных точек также используется клиентом для балансировки нагрузки нескольких экземпляров приложения.
Конструкторы
Event |
Класс |
Event |
Класс |
Event |
Класс |
Event |
Класс |
Event |
Класс |
Event |
Класс |
Свойства
default |
Имя группы потребителей по умолчанию в службе Центров событий. |
event |
Имя экземпляра концентратора событий, для которого создан этот клиент. |
fully |
Полное пространство имен экземпляра концентратора событий, для которого создан этот клиент. Скорее всего, это будет похоже на .servicebus.windows.net. |
identifier | Имя, используемое для идентификации этого EventHubConsumerClient. Если он не указан или пуст, будет создан случайный уникальный объект. |
Методы
close() | Закрывает подключение AMQP к экземпляру концентратора событий, возвращая обещание, которое будет разрешено после завершения отключения. |
get |
Предоставляет сведения о среде выполнения концентратора событий. |
get |
Предоставляет идентификатор для каждой секции, связанной с концентратором событий. |
get |
Предоставляет сведения о состоянии указанной секции. |
subscribe(string, Subscription |
Подписка на события из одной секции. Вызовите метод close() для возвращенного объекта, чтобы остановить получение событий. Пример использования:
|
subscribe(Subscription |
Подписка на события из всех секций. Если хранилище контрольных точек предоставляется для Вызовите метод close() для возвращенного объекта, чтобы остановить получение событий. Пример использования:
|
Сведения о конструкторе
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
: настраивает канал подключения 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
: настраивает канал подключения 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
: настраивает канал подключения 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
: настраивает канал подключения 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
Объект учетных данных, используемый клиентом для получения маркера для проверки подлинности подключения к службе Центры событий Azure.
Сведения о создании учетных данных, поддерживающих проверку подлинности AAD, см. в разделе @azure/identity. AzureNamedKeyCredential
Используйте параметр from @azure/core-auth, если вы хотите передать и SharedAccessKeyName
SharedAccessKey
без использования строки подключения. Эти поля сопоставляют с полем name
и key
соответственно в AzureNamedKeyCredential
.
AzureSASCredential
Используйте параметр from @azure/core-auth, если вы хотите передать без SharedAccessSignature
использования строки подключения. Это поле сопоставляется с signature
в AzureSASCredential
.
- checkpointStore
- CheckpointStore
Хранилище контрольных точек, которое используется клиентом для чтения контрольных точек, чтобы определить расположение, из которого следует возобновить получение событий при перезапуске приложения. Он также используется клиентом для балансировки нагрузки нескольких экземпляров приложения.
- options
- EventHubConsumerClientOptions
Набор параметров, применяемых при настройке клиента.
-
retryOptions
: настраивает политику повтора для всех операций на клиенте. Например,{ "maxRetries": 4 }
или{ "maxRetries": 4, "retryDelayInMs": 30000 }
. -
webSocketOptions
: настраивает канал подключения 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
Объект учетных данных, используемый клиентом для получения маркера для проверки подлинности подключения к службе Центры событий Azure.
Сведения о создании учетных данных, поддерживающих проверку подлинности AAD, см. в разделе @azure/identity. AzureNamedKeyCredential
Используйте параметр from @azure/core-auth, если вы хотите передать и SharedAccessKeyName
SharedAccessKey
без использования строки подключения. Эти поля сопоставляют с полем name
и key
соответственно в AzureNamedKeyCredential
.
AzureSASCredential
Используйте параметр from @azure/core-auth, если вы хотите передать без SharedAccessSignature
использования строки подключения. Это поле сопоставляется с signature
в AzureSASCredential
.
- options
- EventHubConsumerClientOptions
Набор параметров, применяемых при настройке клиента.
-
retryOptions
: настраивает политику повтора для всех операций на клиенте. Например,{ "maxRetries": 4 }
или{ "maxRetries": 4, "retryDelayInMs": 30000 }
. -
webSocketOptions
: настраивает канал подключения 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
Набор параметров, применяемых к вызову операции.
Возвращаемое значение
Promise<EventHubProperties>
Обещание, которое разрешается со сведениями об экземпляре концентратора событий.
getPartitionIds(GetPartitionIdsOptions)
Предоставляет идентификатор для каждой секции, связанной с концентратором событий.
function getPartitionIds(options?: GetPartitionIdsOptions): Promise<string[]>
Параметры
- options
- GetPartitionIdsOptions
Набор параметров, применяемых к вызову операции.
Возвращаемое значение
Promise<string[]>
Обещание, которое разрешается с массивом строк, представляющим идентификатор для каждой секции, связанной с концентратором событий.
getPartitionProperties(string, GetPartitionPropertiesOptions)
Предоставляет сведения о состоянии указанной секции.
function getPartitionProperties(partitionId: string, options?: GetPartitionPropertiesOptions): Promise<PartitionProperties>
Параметры
- partitionId
-
string
Идентификатор секции, для которой требуются сведения.
- options
- GetPartitionPropertiesOptions
Набор параметров, применяемых к вызову операции.
Возвращаемое значение
Promise<PartitionProperties>
Обещание, разрешающееся со сведениями о состоянии секции .
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
Идентификатор секции, на который нужно подписаться.
- handlers
- SubscriptionEventHandlers
Обработчики жизненного цикла подписки — инициализация подписки секции, получение событий, обработка ошибок и закрытие подписки на секцию.
- options
- SubscribeOptions
Настраивает способ получения событий.
Наиболее распространенными являются maxBatchSize
и maxWaitTimeInSeconds
, которые управляют потоком событий к обработчику, предоставленному для получения событий, а также начальной позицией. Например { 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
Настраивает способ получения событий.
Наиболее распространенными являются maxBatchSize
и maxWaitTimeInSeconds
, которые управляют потоком событий к обработчику, предоставленному для получения событий, а также начальной позицией. Например { maxBatchSize: 20, maxWaitTimeInSeconds: 120, startPosition: { sequenceNumber: 123 } }
.