EventHubProducerClient class
Klasa EventHubProducerClient
służy do wysyłania zdarzeń do centrum zdarzeń.
Istnieje wiele sposobów tworzenia EventHubProducerClient
- Użyj parametrów połączenia z zasad sygnatury dostępu współdzielonego utworzonych dla wystąpienia centrum zdarzeń.
- Użyj parametrów połączenia z zasad sygnatury dostępu współdzielonego utworzonych dla przestrzeni nazw centrum zdarzeń oraz nazwy wystąpienia centrum zdarzeń
- Użyj pełnej przestrzeni nazw, takiej jak
<yournamespace>.servicebus.windows.net
, i obiektu poświadczeń.
Opcjonalnie możesz również przekazać pakiet opcji, aby skonfigurować zasady ponawiania prób lub ustawienia serwera proxy.
Konstruktory
Event |
Klasa |
Event |
Klasa |
Event |
Klasa |
Właściwości
event |
Nazwa wystąpienia centrum zdarzeń, dla którego jest tworzony ten klient. |
fully |
W pełni kwalifikowana przestrzeń nazw wystąpienia centrum zdarzeń, dla którego jest tworzony ten klient. Prawdopodobnie będzie to podobne do .servicebus.windows.net. |
identifier | Nazwa używana do identyfikowania tego elementu EventHubProducerClient. Jeśli nie zostanie określony lub pusty, zostanie wygenerowany losowy unikatowy. |
Metody
close() | Zamyka połączenie AMQP z wystąpieniem centrum zdarzeń, zwracając obietnicę, która zostanie rozwiązana po zakończeniu rozłączenia. |
create |
Tworzy wystąpienie Zdarzenia z różnymi wartościami partitionKey lub partitionId należy umieścić w różnych partiach.
Aby uprościć takie zarządzanie wsadowe między partycjami lub automatycznie wysyłać zdarzenia wsadowe klienta i wysyłać je w określonych interwałach, należy zamiast tego użyć W poniższym przykładzie przyjęto założenie, że masz pod ręką tablicę zdarzeń, które mają być bezpiecznie wsadowe.
Jeśli masz zdarzenia przychodzące jeden po drugim, Przykład użycia:
|
get |
Udostępnia informacje o środowisku uruchomieniowym centrum zdarzeń. |
get |
Zawiera identyfikator każdej partycji skojarzonej z centrum zdarzeń. |
get |
Zawiera informacje o stanie określonej partycji. |
send |
Wysyła partię zdarzeń utworzonych przy użyciu Zdarzenia z różnymi wartościami partitionKey lub partitionId należy umieścić w różnych partiach.
Aby uprościć takie zarządzanie wsadowe między partycjami lub automatycznie wysyłać zdarzenia wsadowe klienta i wysyłać je w określonych interwałach, należy zamiast tego użyć W poniższym przykładzie przyjęto założenie, że masz pod ręką tablicę zdarzeń, które mają być bezpiecznie wsadowe.
Jeśli masz zdarzenia przychodzące jeden po drugim, Przykład użycia:
|
send |
Wysyła tablicę zdarzeń jako partię do skojarzonego centrum zdarzeń. Azure Event Hubs ma limit rozmiaru partii, który można wysłać, co w przypadku przekroczenia spowoduje błąd z kodem Przykład użycia:
|
Szczegóły konstruktora
EventHubProducerClient(string, EventHubClientOptions)
Klasa EventHubProducerClient
służy do wysyłania zdarzeń do centrum zdarzeń.
Użyj parametru options
, aby skonfigurować zasady ponawiania prób lub ustawienia serwera proxy.
new EventHubProducerClient(connectionString: string, options?: EventHubClientOptions)
Parametry
- connectionString
-
string
Parametry połączenia używane do nawiązywania połączenia z wystąpieniem centrum zdarzeń. Oczekuje się, że właściwości klucza współużytkowanego i ścieżka centrum zdarzeń znajdują się w tych parametrach połączenia. np. "Endpoint=sb://my-servicebus-namespace.servicebus.windows.net/;SharedAccessKeyName=my-SA-name; SharedAccessKey=my-SA-key; EntityPath=my-event-hub-name'.
- options
- EventHubClientOptions
Zestaw opcji do zastosowania podczas konfigurowania klienta.
-
retryOptions
: Konfiguruje zasady ponawiania dla wszystkich operacji na kliencie. Na przykład:{ "maxRetries": 4 }
lub{ "maxRetries": 4, "retryDelayInMs": 30000 }
. -
webSocketOptions
: konfiguruje channelling połączenia AMQP za pośrednictwem web sockets. -
userAgent
: ciąg dołączany do wbudowanego ciągu agenta użytkownika, który jest przekazywany do usługi.
EventHubProducerClient(string, string, EventHubClientOptions)
Klasa EventHubProducerClient
służy do wysyłania zdarzeń do centrum zdarzeń.
Użyj parametru options
, aby skonfigurować zasady ponawiania prób lub ustawienia serwera proxy.
new EventHubProducerClient(connectionString: string, eventHubName: string, options?: EventHubClientOptions)
Parametry
- connectionString
-
string
Parametry połączenia używane do nawiązywania połączenia z przestrzenią nazw usługi Event Hubs. Oczekiwano, że właściwości klucza współużytkowanego znajdują się w tych parametrach połączenia, ale nie w ścieżce centrum zdarzeń, np. "Endpoint=sb://my-servicebus-namespace.servicebus.windows.net/;SharedAccessKeyName=my-SA-name; SharedAccessKey=my-SA-key;'.
- eventHubName
-
string
Nazwa określonego centrum zdarzeń do połączenia klienta.
- options
- EventHubClientOptions
Zestaw opcji do zastosowania podczas konfigurowania klienta.
-
retryOptions
: Konfiguruje zasady ponawiania dla wszystkich operacji na kliencie. Na przykład:{ "maxRetries": 4 }
lub{ "maxRetries": 4, "retryDelayInMs": 30000 }
. -
webSocketOptions
: konfiguruje channelling połączenia AMQP za pośrednictwem web sockets. -
userAgent
: ciąg dołączany do wbudowanego ciągu agenta użytkownika, który jest przekazywany do usługi.
EventHubProducerClient(string, string, TokenCredential | NamedKeyCredential | SASCredential, EventHubClientOptions)
Klasa EventHubProducerClient
służy do wysyłania zdarzeń do centrum zdarzeń.
Użyj parametru options
, aby skonfigurować zasady ponawiania prób lub ustawienia serwera proxy.
new EventHubProducerClient(fullyQualifiedNamespace: string, eventHubName: string, credential: TokenCredential | NamedKeyCredential | SASCredential, options?: EventHubClientOptions)
Parametry
- fullyQualifiedNamespace
-
string
Pełna przestrzeń nazw, która prawdopodobnie będzie podobna do .servicebus.windows.net
- eventHubName
-
string
Nazwa określonego centrum zdarzeń do połączenia klienta.
- credential
Obiekt poświadczeń używany przez klienta do uzyskiwania tokenu w celu uwierzytelnienia połączenia z usługą Azure Event Hubs.
Zobacz @azure/tożsamość, aby utworzyć poświadczenia obsługujące uwierzytelnianie usługi AAD. Użyj polecenia AzureNamedKeyCredential
from @azure/core-auth, jeśli chcesz przekazać SharedAccessKeyName
SharedAccessKey
parametry połączenia i bez użycia parametrów połączenia. Te pola są mapowanie odpowiednio na name
pola i key
w elemecie AzureNamedKeyCredential
.
Użyj polecenia AzureSASCredential
from @azure/core-auth, jeśli chcesz przekazać SharedAccessSignature
element bez użycia parametrów połączenia. To pole jest mapowe na signature
w pliku AzureSASCredential
.
- options
- EventHubClientOptions
Zestaw opcji do zastosowania podczas konfigurowania klienta.
-
retryOptions
: Konfiguruje zasady ponawiania dla wszystkich operacji na kliencie. Na przykład:{ "maxRetries": 4 }
lub{ "maxRetries": 4, "retryDelayInMs": 30000 }
. -
webSocketOptions
: konfiguruje channelling połączenia AMQP za pośrednictwem web sockets. -
userAgent
: ciąg dołączany do wbudowanego ciągu agenta użytkownika, który jest przekazywany do usługi.
Szczegóły właściwości
eventHubName
Nazwa wystąpienia centrum zdarzeń, dla którego jest tworzony ten klient.
string eventHubName
Wartość właściwości
string
fullyQualifiedNamespace
W pełni kwalifikowana przestrzeń nazw wystąpienia centrum zdarzeń, dla którego jest tworzony ten klient. Prawdopodobnie będzie to podobne do .servicebus.windows.net.
string fullyQualifiedNamespace
Wartość właściwości
string
identifier
Nazwa używana do identyfikowania tego elementu EventHubProducerClient. Jeśli nie zostanie określony lub pusty, zostanie wygenerowany losowy unikatowy.
identifier: string
Wartość właściwości
string
Szczegóły metody
close()
Zamyka połączenie AMQP z wystąpieniem centrum zdarzeń, zwracając obietnicę, która zostanie rozwiązana po zakończeniu rozłączenia.
function close(): Promise<void>
Zwraca
Promise<void>
Obietnica
createBatch(CreateBatchOptions)
Tworzy wystąpienie EventDataBatch
, do którego można dodać zdarzenia do momentu osiągnięcia maksymalnego obsługiwanego rozmiaru.
Partię można przekazać do metody sendBatch obiektu EventHubProducerClient
, która ma zostać wysłana do Azure Event Hubs.
Zdarzenia z różnymi wartościami partitionKey lub partitionId należy umieścić w różnych partiach.
Aby uprościć takie zarządzanie wsadowe między partycjami lub automatycznie wysyłać zdarzenia wsadowe klienta i wysyłać je w określonych interwałach, należy zamiast tego użyć EventHubBufferedProducerClient
polecenia .
W poniższym przykładzie przyjęto założenie, że masz pod ręką tablicę zdarzeń, które mają być bezpiecznie wsadowe.
Jeśli masz zdarzenia przychodzące jeden po drugim, EventHubBufferedProducerClient
zaleca się zamiast tego efektywne zarządzanie partiami.
Przykład użycia:
const client = new EventHubProducerClient(connectionString);
let batch = await client.createBatch();
for (let i = 0; i < messages.length; i++) {
if (!batch.tryAdd(messages[i])) {
await client.sendBatch(batch);
batch = await client.createBatch();
if (!batch.tryAdd(messages[i])) {
throw new Error("Message too big to fit")
}
if (i === messages.length - 1) {
await client.sendBatch(batch);
}
}
}
function createBatch(options?: CreateBatchOptions): Promise<EventDataBatch>
Parametry
- options
- CreateBatchOptions
Konfiguruje zachowanie partii.
-
partitionKey
: wartość skrótu i używana przez usługę Azure Event Hubs do określenia partycji, do której mają być wysyłane zdarzenia. -
partitionId
: identyfikator partycji, do której należy wysłać partię zdarzeń. -
maxSizeInBytes
: górny limit rozmiaru partii. Funkcja zostanie zwróconatryAdd
false
po osiągnięciu tego limitu. -
abortSignal
: sygnał żądania anulowania operacji.
Zwraca
Promise<EventDataBatch>
Obietnica
getEventHubProperties(GetEventHubPropertiesOptions)
Udostępnia informacje o środowisku uruchomieniowym centrum zdarzeń.
function getEventHubProperties(options?: GetEventHubPropertiesOptions): Promise<EventHubProperties>
Parametry
- options
- GetEventHubPropertiesOptions
Zestaw opcji do zastosowania do wywołania operacji.
Zwraca
Promise<EventHubProperties>
Obietnica, która rozwiązuje problem z informacjami o wystąpieniu centrum zdarzeń.
getPartitionIds(GetPartitionIdsOptions)
Zawiera identyfikator każdej partycji skojarzonej z centrum zdarzeń.
function getPartitionIds(options?: GetPartitionIdsOptions): Promise<string[]>
Parametry
- options
- GetPartitionIdsOptions
Zestaw opcji do zastosowania do wywołania operacji.
Zwraca
Promise<string[]>
Obietnica, która jest rozpoznawana za pomocą tablicy ciągów reprezentujących identyfikator dla każdej partycji skojarzonej z centrum zdarzeń.
getPartitionProperties(string, GetPartitionPropertiesOptions)
Zawiera informacje o stanie określonej partycji.
function getPartitionProperties(partitionId: string, options?: GetPartitionPropertiesOptions): Promise<PartitionProperties>
Parametry
- partitionId
-
string
Identyfikator partycji, dla której są wymagane informacje.
- options
- GetPartitionPropertiesOptions
Zestaw opcji do zastosowania do wywołania operacji.
Zwraca
Promise<PartitionProperties>
Obietnica, która rozwiązuje problem z informacjami o stanie partycji .
sendBatch(EventDataBatch, OperationOptions)
Wysyła partię zdarzeń utworzonych przy użyciu EventHubProducerClient.createBatch()
do skojarzonego centrum zdarzeń.
Zdarzenia z różnymi wartościami partitionKey lub partitionId należy umieścić w różnych partiach.
Aby uprościć takie zarządzanie wsadowe między partycjami lub automatycznie wysyłać zdarzenia wsadowe klienta i wysyłać je w określonych interwałach, należy zamiast tego użyć EventHubBufferedProducerClient
polecenia .
W poniższym przykładzie przyjęto założenie, że masz pod ręką tablicę zdarzeń, które mają być bezpiecznie wsadowe.
Jeśli masz zdarzenia przychodzące jeden po drugim, EventHubBufferedProducerClient
zaleca się zamiast tego efektywne zarządzanie partiami.
Przykład użycia:
const client = new EventHubProducerClient(connectionString);
let batch = await client.createBatch();
for (let i = 0; i < messages.length; i++) {
if (!batch.tryAdd(messages[i])) {
await client.sendBatch(batch);
batch = await client.createBatch();
if (!batch.tryAdd(messages[i])) {
throw new Error("Message too big to fit")
}
if (i === messages.length - 1) {
await client.sendBatch(batch);
}
}
}
function sendBatch(batch: EventDataBatch, options?: OperationOptions): Promise<void>
Parametry
- batch
- EventDataBatch
Partia zdarzeń, które można utworzyć przy użyciu metody createBatch .
- options
- OperationOptions
Zestaw opcji, które można określić, aby wpływać na sposób, w jaki zdarzenia są wysyłane do skojarzonego centrum zdarzeń.
-
abortSignal
: sygnał żądania anulowania operacji wysyłania.
Zwraca
Promise<void>
Obietnica
sendBatch(EventData[] | AmqpAnnotatedMessage[], SendBatchOptions)
Wysyła tablicę zdarzeń jako partię do skojarzonego centrum zdarzeń.
Azure Event Hubs ma limit rozmiaru partii, który można wysłać, co w przypadku przekroczenia spowoduje błąd z kodem MessageTooLargeError
.
Aby bezpiecznie wysyłać dane w ramach limitów rozmiaru partii, użyj polecenia EventHubProducerClient.createBatch()
lub EventHubBufferedProducerClient
zamiast tego.
Przykład użycia:
const client = new EventHubProducerClient(connectionString);
await client.sendBatch(messages);
function sendBatch(batch: EventData[] | AmqpAnnotatedMessage[], options?: SendBatchOptions): Promise<void>
Parametry
- batch
Tablica eventData lub AmqpAnnotatedMessage
.
- options
- SendBatchOptions
Zestaw opcji, które można określić, aby wpływać na sposób, w jaki zdarzenia są wysyłane do skojarzonego centrum zdarzeń.
-
abortSignal
: sygnał żądania anulowania operacji wysyłania. -
partitionId
: partycja, do których zostanie wysłana ta partia. W przypadku ustawieniapartitionKey
nie można ustawić. -
partitionKey
: wartość skrótu w celu utworzenia przypisania partycji. W przypadku ustawieniapartitionId
nie można ustawić.
Zwraca
Promise<void>
Obietnica