Udostępnij za pośrednictwem


@azure/event-hubs package

Klasy

EventHubBufferedProducerClient

Element EventHubBufferedProducerClientsłuży do publikowania zdarzeń w określonym centrum zdarzeń.

Element EventHubBufferedProducerClient nie publikuje natychmiast zdarzeń. Zamiast tego zdarzenia są buforowane, dzięki czemu mogą być wydajnie wsadowe i publikowane, gdy partia jest pełna lub maxWaitTimeInMs upłynął bez nowych zdarzeń w kolejce.

W zależności od opcji określonych, gdy zdarzenia są w kolejce, mogą być automatycznie przypisywane do partycji, pogrupowane zgodnie z określonym kluczem partycji lub przypisane specjalnie żądanej partycji.

Ten model ma na celu przesunięcie obciążenia związane z zarządzaniem wsadowym od wywołujących, kosztem czasu niedeterministycznego, w przypadku, gdy zdarzenia zostaną opublikowane. Istnieją dodatkowe kompromisy, które należy wziąć pod uwagę, a także:

  • Jeśli aplikacja ulegnie awarii, zdarzenia w buforze nie zostaną opublikowane. Aby zapobiec utracie danych, zachęcamy osoby wywołujące do śledzenia postępu publikowania przy użyciu programów onSendEventsSuccessHandler obsługi i .onSendEventsErrorHandler
  • Zdarzenia określające klucz partycji mogą mieć przypisaną inną partycję niż te, które używają tego samego klucza z innymi producentami.
  • W mało prawdopodobnym przypadku, gdy partycja stanie się tymczasowo niedostępna, EventHubBufferedProducerClient odzyskiwanie może potrwać dłużej niż inni producenci.

W scenariuszach, w których ważne jest, aby zdarzenia były publikowane natychmiast z wynikiem deterministycznym, upewnij się, że klucze partycji są przypisane do partycji spójnej z innymi wydawcami lub gdy maksymalizacja dostępności jest wymagana, użycie elementu EventHubProducerClient jest zalecane.

EventHubConsumerClient

Klasa EventHubConsumerClient służy do korzystania ze zdarzeń z centrum zdarzeń.

Istnieje wiele sposobów tworzenia EventHubConsumerClient

  • Użyj parametry połączenia z zasad sas utworzonych dla wystąpienia centrum zdarzeń.
  • Użyj parametry połączenia z zasad sygnatury dostępu współdzielonego utworzonej 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ć następujące elementy:

  • Pakiet opcji umożliwiający skonfigurowanie zasad ponawiania prób lub ustawień serwera proxy.
  • Magazyn punktów kontrolnych używany przez klienta do odczytywania punktów kontrolnych w celu określenia położenia, z którego powinien wznowić odbieranie zdarzeń po ponownym uruchomieniu aplikacji. Magazyn punktów kontrolnych jest również używany przez klienta do równoważenia obciążenia wielu wystąpień aplikacji.
EventHubProducerClient

Klasa EventHubProducerClient służy do wysyłania zdarzeń do centrum zdarzeń.

Istnieje wiele sposobów tworzenia EventHubProducerClient

  • Użyj parametry połączenia z zasad sas utworzonych dla wystąpienia centrum zdarzeń.
  • Użyj parametry połączenia z zasad sygnatury dostępu współdzielonego utworzonej 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.

MessagingError

Opisuje klasę podstawową dla błędu obsługi komunikatów.

Interfejsy

BufferedCloseOptions

Opcje konfigurowania close metody w pliku EventHubBufferedProducerClient.

BufferedFlushOptions

Opcje konfigurowania flush metody w pliku EventHubBufferedProducerClient.

Checkpoint

Punkt kontrolny jest przeznaczony do reprezentowania ostatniego pomyślnie przetworzonego zdarzenia przez użytkownika z określonej partycji grupy odbiorców w wystąpieniu centrum zdarzeń.

updateCheckpoint() Gdy metoda w PartitionProcessor klasie jest wywoływana przez użytkownika, Checkpoint element jest tworzony wewnętrznie. Następnie jest on przechowywany w rozwiązaniu magazynu zaimplementowanym przez CheckpointManager użytkownika podczas tworzenia obiektu EventProcessor.

Użytkownicy nigdy nie powinny bezpośrednio wchodzić w Checkpoint interakcje. Ten interfejs istnieje w celu obsługi wewnętrznych funkcji EventProcessor i CheckpointManager.

CheckpointStore

Magazyn punktów kontrolnych przechowuje i pobiera informacje o własności partycji oraz szczegóły punktu kontrolnego dla każdej partycji w danej grupie odbiorców wystąpienia centrum zdarzeń.

Użytkownicy nie mają zaimplementować elementu CheckpointStore. Użytkownicy mają wybrać istniejące implementacje tego interfejsu, utworzyć jego wystąpienie i przekazać go do EventHubConsumerClient konstruktora klasy podczas tworzenia wystąpienia klienta. Użytkownicy nie powinny używać żadnych metod w magazynie punktów kontrolnych. Są one używane wewnętrznie przez klienta.

Implementacje programu CheckpointStore można znaleźć na serwerze npm, wyszukując pakiety z prefiksem @azure/eventhub-checkpointstore-.

CreateBatchOptions

Opcje konfigurowania createBatch metody w pliku EventHubProducerClient.

  • partitionKey : wartość skrótu w celu utworzenia przypisania partycji.
  • maxSizeInBytes: górny limit rozmiaru partii.
  • abortSignal : sygnał żądania anulowania operacji wysyłania.

Przykład użycia:

{
    partitionKey: 'foo',
    maxSizeInBytes: 1024 * 1024 // 1 MB
}
EnqueueEventOptions

Opcje konfigurowania enqueueEvents metody w pliku EventHubBufferedProducerClient.

EventData

Interfejs opisujący dane do wysłania do centrum zdarzeń. Użyj go jako odwołania podczas tworzenia obiektu do wysłania podczas korzystania z obiektu EventHubProducerClient. Na przykład lub { body: "your-data" }

{
   body: "your-data",
   properties: {
      propertyName: "property value"
   }
}
EventDataAdapterParameters

createEventDataAdapter Parametry funkcji, która tworzy kartę danych zdarzeń.

EventDataBatch

Interfejs reprezentujący partię zdarzeń, które mogą służyć do wysyłania zdarzeń do centrum zdarzeń.

Aby utworzyć partię, użyj createBatch() metody w pliku EventHubProducerClient. Aby wysłać partię, użyj sendBatch() metody na tym samym kliencie. Aby wypełnić partię, użyj tryAdd() metody w samej partii.

EventHubBufferedProducerClientOptions

Opisuje opcje, które można podać podczas tworzenia elementu EventHubBufferedProducerClient.

EventHubClientOptions

Opisuje opcje, które można udostępnić podczas tworzenia elementu EventHubClient.

  • userAgent : ciąg dołączany do wbudowanych parametrów agenta użytkownika, który jest przekazywany jako właściwość połączenia do usługi.
  • webSocketOptions : Opcje konfigurowania kanału połączenia AMQP za pośrednictwem gniazd sieci Web.
    • websocket : konstruktor Protokołu WebSocket używany do tworzenia połączenia protokołu AMQP, jeśli zdecydujesz się nawiązać połączenie za pośrednictwem protokołu WebSocket.
    • webSocketConstructorOptions : Opcje przekazywania do konstruktora protokołu Websocket podczas wybierania połączenia za pośrednictwem protokołu WebSocket.
  • retryOptions : opcje ponawiania dla wszystkich operacji na kliencie/producencie/odbiorcy.
    • maxRetries : ile razy można ponowić próbę operacji w przypadku błędu możliwego do ponowienia próby.
    • maxRetryDelayInMs: maksymalne opóźnienie między ponawianiami prób. Ma zastosowanie tylko w przypadku wykonywania ponownych prób wykładniczych.
    • mode: który tryb ponawiania prób ma być stosowany przez wyliczenie RetryMode . Opcje to Exponential i Fixed. Wartość domyślna to Fixed.
    • retryDelayInMs: czas oczekiwania w milisekundach przed podjęciem następnej próby. Gdy mode parametr ma wartość Exponential, służy do obliczania wykładniczo rosnących opóźnień między ponownymi próbami. Wartość domyślna: 30000 milisekund.
    • timeoutInMs: czas oczekiwania w milisekundach przed upływem limitu czasu operacji. Spowoduje to wyzwolenie ponawiania próby w przypadku pozostałych ponownych prób. Wartość domyślna: 60000 milisekund.

Prostym użyciem może być { "maxRetries": 4 }.

Przykład użycia:

{
    retryOptions: {
        maxRetries: 4
    }
}
EventHubConnectionStringProperties

Zestaw właściwości składających się na parametry połączenia centrum zdarzeń.

EventHubConsumerClientOptions

Opisuje opcje, które można udostępnić podczas tworzenia elementu EventHubConsumerClient.

  • loadBalancingOptions: opcje dostrojenia partycji oświadczeń EventHubConsumerClient.
  • userAgent : ciąg dołączany do wbudowanych parametrów agenta użytkownika, który jest przekazywany jako właściwość połączenia do usługi.
  • webSocketOptions : Opcje konfigurowania kanału połączenia AMQP za pośrednictwem gniazd sieci Web.
    • websocket : konstruktor Protokołu WebSocket używany do tworzenia połączenia protokołu AMQP, jeśli zdecydujesz się nawiązać połączenie za pośrednictwem protokołu WebSocket.
    • webSocketConstructorOptions : Opcje przekazywania do konstruktora protokołu Websocket podczas wybierania połączenia za pośrednictwem protokołu WebSocket.
  • retryOptions : opcje ponawiania dla wszystkich operacji na kliencie/producencie/odbiorcy.
    • maxRetries : ile razy można ponowić próbę operacji w przypadku błędu możliwego do ponowienia próby.
    • maxRetryDelayInMs: maksymalne opóźnienie między ponawianiami prób. Ma zastosowanie tylko w przypadku wykonywania ponownych prób wykładniczych.
    • mode: który tryb ponawiania prób ma być stosowany przez wyliczenie RetryMode . Opcje to Exponential i Fixed. Wartość domyślna to Fixed.
    • retryDelayInMs: czas oczekiwania w milisekundach przed podjęciem następnej próby. Gdy mode parametr ma wartość Exponential, służy do obliczania wykładniczo rosnących opóźnień między ponownymi próbami. Wartość domyślna: 30000 milisekund.
    • timeoutInMs: czas oczekiwania w milisekundach przed upływem limitu czasu operacji. Spowoduje to wyzwolenie ponawiania próby w przypadku pozostałych ponownych prób. Wartość domyślna: 60000 milisekund.

Prostym użyciem może być { "maxRetries": 4 }.

Przykład użycia:

{
    retryOptions: {
        maxRetries: 4
    }
}
EventHubProperties

Opisuje informacje o środowisku uruchomieniowym centrum zdarzeń.

EventPosition

Reprezentuje położenie zdarzenia w partycji centrum zdarzeń, zwykle używane podczas wywoływania subscribe() metody na obiekcie EventHubConsumerClient w celu określenia pozycji w partycji, aby rozpocząć odbieranie zdarzeń.

Aby uzyskać pozycję EventPosition reprezentującą początek lub koniec strumienia, użyj stałych earliestEventPosition i latestEventPosition odpowiednio.

GetEventHubPropertiesOptions

Zestaw opcji do skonfigurowania zachowania programu getEventHubProperties.

  • abortSignal : implementacja interfejsu AbortSignalLike sygnalizuje żądanie anulowania operacji.
  • parentSpan : element Span lub SpanContext , który ma być używany jako parent zakres utworzony podczas wywoływania tej operacji.
GetPartitionIdsOptions

Zestaw opcji do skonfigurowania zachowania programu getPartitionIds.

  • abortSignal : implementacja interfejsu AbortSignalLike sygnalizuje żądanie anulowania operacji.
  • parentSpan : element Span lub SpanContext , który ma być używany jako parent zakres utworzony podczas wywoływania tej operacji.
GetPartitionPropertiesOptions

Zestaw opcji do skonfigurowania zachowania programu getPartitionProperties.

  • abortSignal : implementacja interfejsu AbortSignalLike sygnalizuje żądanie anulowania operacji.
  • parentSpan : element Span lub SpanContext , który ma być używany jako parent zakres utworzony podczas wywoływania tej operacji.
LastEnqueuedEventProperties

Zestaw informacji o ostatnim zdarzeniu w kolejce partycji obserwowany przez konsumenta jako zdarzenia są odbierane z usługi Event Hubs

LoadBalancingOptions

Torba opcji do skonfigurowania ustawień równoważenia obciążenia.

OnSendEventsErrorContext

Zawiera zdarzenia, które nie zostały pomyślnie wysłane do centrum zdarzeń, do której zostały przypisane partycje, oraz błąd napotkany podczas wysyłania.

OnSendEventsSuccessContext

Zawiera zdarzenia, które zostały pomyślnie wysłane do centrum zdarzeń, i partycję, do której zostały przypisane.

OperationOptions

Opcje konfigurowania śledzenia i abortSignal.

PartitionContext

Interfejs opisujący kontekst przekazywany do każdego z funkcji, które są częścią elementu SubscriptionEventHandlers. Podczas implementowania dowolnej z tych funkcji użyj obiektu kontekstu, aby uzyskać informacje o partycji, a także możliwość punktu kontrolnego.

PartitionOwnership

Interfejs reprezentujący szczegółowe informacje o tym, które wystąpienie EventProcessor jest właścicielem przetwarzania danej partycji z grupy odbiorców wystąpienia centrum zdarzeń.

Uwaga: jest on używany wewnętrznie przez EventProcessor użytkownika i nigdy nie musi go tworzyć bezpośrednio.

PartitionProperties

Opisuje informacje o środowisku uruchomieniowym partycji EventHub.

ReceivedEventData

Interfejs opisujący strukturę zdarzenia odebranego z centrum zdarzeń. Użyj tego jako odwołania podczas tworzenia processEvents funkcji do przetwarzania zdarzeń odebranych z centrum zdarzeń podczas korzystania z usługi EventHubConsumerClient.

RetryOptions

Opcje zasad ponawiania, które określają tryb, liczbę ponownych prób, interwał ponawiania prób itp.

SendBatchOptions

Opcje konfigurowania sendBatch metody podczas EventHubProducerClient wysyłania tablicy zdarzeń. Jeśli partitionId jest ustawiona, partitionKey nie należy ustawiać ani na odwrót.

  • partitionId : partycja, do tej partii zostanie wysłana.
  • partitionKey : wartość, która jest skrótem w celu utworzenia przypisania partycji.
  • abortSignal : sygnał używany do anulowania operacji wysyłania.
SubscribeOptions

Opcje konfigurowania subscribe metody w obiekcie EventHubConsumerClient. Na przykład { maxBatchSize: 20, maxWaitTimeInSeconds: 120, startPosition: { sequenceNumber: 123 } }

Subscription

Interfejs opisujący obiekt zwrócony przez metodę subscribe() w obiekcie EventHubConsumerClient.

SubscriptionEventHandlers

Interfejs opisujący funkcje, które mają być implementowane przez użytkownika, który jest wywoływany przez EventHubConsumerClientsubscribe() metodę w celu odbierania zdarzeń z centrum zdarzeń.

TokenCredential

Reprezentuje poświadczenie, które może zapewnić token uwierzytelniania.

TryAddOptions

Opcje konfigurowania tryAdd zachowania metody w EventDataBatch klasie.

WebSocketImpl

Opisuje wymagany kształt konstruktorów WebSocket.

WebSocketOptions

Opcje konfigurowania kanału połączenia AMQP za pośrednictwem gniazd internetowych.

Aliasy typu

ProcessCloseHandler

Podpis udostępnionej przez użytkownika funkcji wywoływanej EventHubConsumerClient tuż po zatrzymaniu odbierania zdarzeń z partycji.

ProcessErrorHandler

Podpis udostępnionej przez użytkownika funkcji wywoływanej przez EventHubConsumerClient błędy występujące podczas odbierania zdarzeń lub wykonywania dowolnych funkcji udostępnionych przez użytkownika przekazanych do subscribe() metody.

ProcessEventsHandler

Podpis udostępnionej przez użytkownika funkcji wywoływanej EventHubConsumerClient po odebraniu zestawu zdarzeń.

ProcessInitializeHandler

Podpis udostępnionej przez użytkownika funkcji wywoływanej EventHubConsumerClient tuż przed rozpoczęciem odbierania zdarzeń z partycji.

Wyliczenia

CloseReason

Wyliczenie reprezentujące różne przyczyny EventHubConsumerClient zatrzymania przetwarzania zdarzeń z partycji w grupie odbiorców centrum zdarzeń.

RetryMode

Opisuje typ trybu ponawiania prób

Funkcje

createEventDataAdapter(EventDataAdapterParameters)

Funkcja, która tworzy kartę danych zdarzeń. Tej karty można używać do @azure/schema-registry-avro kodowania i dekodowania treści w danych zdarzeń.

parseEventHubConnectionString(string)

Analizuje podane parametry połączenia w różnych właściwościach mających zastosowanie do Azure Event Hubs. Właściwości są przydatne do konstruowania obiektu EventHubProducerClient lub EventHubConsumerClient.

Szczegóły funkcji

createEventDataAdapter(EventDataAdapterParameters)

Funkcja, która tworzy kartę danych zdarzeń. Tej karty można używać do @azure/schema-registry-avro kodowania i dekodowania treści w danych zdarzeń.

function createEventDataAdapter(params?: EventDataAdapterParameters): MessageAdapter<EventData>

Parametry

params
EventDataAdapterParameters

parametry tworzenia danych zdarzenia

Zwraca

MessageAdapter<EventData>

Karta danych zdarzenia, która może tworzyć dane zdarzeń i korzystać z nich

parseEventHubConnectionString(string)

Analizuje podane parametry połączenia w różnych właściwościach mających zastosowanie do Azure Event Hubs. Właściwości są przydatne do konstruowania obiektu EventHubProducerClient lub EventHubConsumerClient.

function parseEventHubConnectionString(connectionString: string): Readonly<EventHubConnectionStringProperties>

Parametry

connectionString

string

Parametry połączenia skojarzone z zasadami dostępu współdzielonego utworzonymi dla przestrzeni nazw usługi Event Hubs.

Zwraca