Delen via


@azure/event-hubs package

Klassen

EventHubBufferedProducerClient

De EventHubBufferedProducerClientwordt gebruikt om gebeurtenissen te publiceren naar een specifieke Event Hub.

De EventHubBufferedProducerClient publiceert gebeurtenissen niet onmiddellijk. In plaats daarvan worden gebeurtenissen gebufferd, zodat ze efficiënt kunnen worden gebatcheerd en gepubliceerd wanneer de batch vol is of de maxWaitTimeInMs is verstreken zonder nieuwe gebeurtenissen.

Afhankelijk van de opties die zijn opgegeven wanneer gebeurtenissen worden ge enqueued, kunnen ze automatisch worden toegewezen aan een partitie, gegroepeerd op basis van de opgegeven partitiesleutel of een specifiek aangevraagde partitie toegewezen.

Dit model is bedoeld om de belasting van batchbeheer te verschuiven van bellers, ten koste van niet-deterministische timing, voor wanneer gebeurtenissen worden gepubliceerd. Er zijn ook aanvullende afwegingen om rekening mee te houden:

  • Als de toepassing vastloopt, zijn gebeurtenissen in de buffer niet gepubliceerd. Om gegevensverlies te voorkomen, worden bellers aangemoedigd om de voortgang van het publiceren bij te houden met behulp van de onSendEventsSuccessHandler en onSendEventsErrorHandler handlers.
  • Gebeurtenissen die een partitiesleutel opgeven, kunnen aan een andere partitie worden toegewezen dan aan gebeurtenissen die dezelfde sleutel gebruiken bij andere producenten.
  • In het onwaarschijnlijke geval dat een partitie tijdelijk niet beschikbaar is, kan het EventHubBufferedProducerClient langer duren om te herstellen dan andere producenten.

In scenario's waarin het belangrijk is dat gebeurtenissen onmiddellijk worden gepubliceerd met een deterministisch resultaat, moet u ervoor zorgen dat partitiesleutels worden toegewezen aan een partitie die consistent is met andere uitgevers, of wanneer het maximaliseren van de beschikbaarheid een vereiste is, met behulp van de EventHubProducerClient wordt aanbevolen.

EventHubConsumerClient

De EventHubConsumerClient-klasse wordt gebruikt om gebeurtenissen van een Event Hub te gebruiken.

Er zijn meerdere manieren om een EventHubConsumerClient te maken

  • Gebruik de verbindingsreeks van het SAS-beleid dat is gemaakt voor uw Event Hub-exemplaar.
  • Gebruik de verbindingsreeks van het SAS-beleid dat is gemaakt voor uw Event Hub-naamruimte en de naam van het Event Hub-exemplaar
  • Gebruik de volledige naamruimte zoals <yournamespace>.servicebus.windows.neten een referentieobject.

U kunt ook het volgende doorgeven:

  • Een optiestas voor het configureren van het beleid voor opnieuw proberen of proxyinstellingen.
  • Een controlepuntarchief dat door de client wordt gebruikt om controlepunten te lezen om de positie te bepalen van waaruit het ontvangen van gebeurtenissen moet hervatten wanneer uw toepassing opnieuw wordt opgestart. Het controlepuntarchief wordt ook door de client gebruikt om meerdere exemplaren van uw toepassing te verdelen.
EventHubProducerClient

De EventHubProducerClient-klasse wordt gebruikt om gebeurtenissen naar een Event Hub te verzenden.

Er zijn meerdere manieren om een EventHubProducerClient te maken

  • Gebruik de verbindingsreeks van het SAS-beleid dat is gemaakt voor uw Event Hub-exemplaar.
  • Gebruik de verbindingsreeks van het SAS-beleid dat is gemaakt voor uw Event Hub-naamruimte en de naam van het Event Hub-exemplaar
  • Gebruik de volledige naamruimte zoals <yournamespace>.servicebus.windows.neten een referentieobject.

U kunt eventueel ook een optiestas doorgeven om het beleid of de proxy-instellingen voor opnieuw proberen te configureren.

MessagingError

Beschrijft de basisklasse voor berichtfout.

Interfaces

BufferedCloseOptions

Opties voor het configureren van de methode close op de EventHubBufferedProducerClient.

BufferedFlushOptions

Opties voor het configureren van de methode flush op de EventHubBufferedProducerClient.

Checkpoint

Een controlepunt is bedoeld om de laatst verwerkte gebeurtenis te vertegenwoordigen door de gebruiker van een bepaalde partitie van een consumentengroep in een Event Hub-exemplaar.

Wanneer de updateCheckpoint() methode in de PartitionProcessor-klasse wordt aangeroepen door de gebruiker, wordt intern een Checkpoint gemaakt. Deze wordt vervolgens opgeslagen in de opslagoplossing die wordt geïmplementeerd door de door de gebruiker gekozen CheckpointManager bij het maken van een EventProcessor.

Gebruikers zullen nooit rechtstreeks met Checkpoint communiceren. Deze interface bestaat ter ondersteuning van de interne werking van EventProcessor en CheckpointManager.

CheckpointStore

In een controlepuntarchief worden gegevens over eigendom van partities en controlepuntgegevens opgeslagen en opgehaald voor elke partitie in een bepaalde consumentengroep van een Event Hub-exemplaar.

Gebruikers zijn niet bedoeld om een CheckpointStorete implementeren. Gebruikers worden verwacht bestaande implementaties van deze interface te kiezen, deze te instantiëren en door te geven aan de EventHubConsumerClient klasseconstructor bij het instantiëren van een client. Gebruikers zullen naar verwachting geen van de methoden in een controlepuntarchief gebruiken. Deze worden intern door de client gebruikt.

Implementaties van CheckpointStore vindt u op npm door te zoeken naar pakketten met het voorvoegsel @azure/eventhub-checkpointstore-.

CreateBatchOptions

Opties voor het configureren van de methode createBatch op de EventHubProducerClient.

  • partitionKey: een waarde die is gehasht om een partitietoewijzing te produceren.
  • maxSizeInBytes: de bovengrens voor de grootte van de batch.
  • abortSignal: een signaal voor de aanvraag om de verzendbewerking te annuleren.

Voorbeeldgebruik:

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

Opties voor het configureren van de methode enqueueEvents op de EventHubBufferedProducerClient.

EventData

De interface waarin de gegevens worden beschreven die naar Event Hub moeten worden verzonden. Gebruik dit als referentie bij het maken van het object dat moet worden verzonden wanneer u de EventHubProducerClientgebruikt. Bijvoorbeeld { body: "your-data" } of

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

Parameters voor de createEventDataAdapter-functie waarmee een gebeurtenisgegevensadapter wordt gemaakt.

EventDataBatch

Een interface die een batch gebeurtenissen vertegenwoordigt die kan worden gebruikt om gebeurtenissen naar Event Hub te verzenden.

Als u de batch wilt maken, gebruikt u de createBatch() methode op de EventHubProducerClient. Als u de batch wilt verzenden, gebruikt u de methode sendBatch() op dezelfde client. Als u de batch wilt vullen, gebruikt u de tryAdd() methode in de batch zelf.

EventHubBufferedProducerClientOptions

Beschrijft de opties die kunnen worden opgegeven tijdens het maken van de EventHubBufferedProducerClient.

EventHubClientOptions

Beschrijft de opties die kunnen worden opgegeven tijdens het maken van de EventHubClient.

  • userAgent: een tekenreeks die moet worden toegevoegd aan de ingebouwde tekenreeks van de gebruikersagent die wordt doorgegeven als een verbindingseigenschap aan de service.
  • webSocketOptions: opties voor het configureren van de kanaalling van de AMQP-verbinding via Web Sockets.
    • websocket: de WebSocket-constructor die wordt gebruikt om een AMQP-verbinding te maken als u ervoor kiest om verbinding te maken via een WebSocket.
    • webSocketConstructorOptions: Opties om door te geven aan de Websocket-constructor wanneer u ervoor kiest om verbinding te maken via een WebSocket.
  • retryOptions: de opties voor opnieuw proberen voor alle bewerkingen op de client/producent/consument.
    • maxRetries: het aantal keren dat de bewerking opnieuw kan worden uitgevoerd in het geval van een fout die opnieuw kan worden geprobeerd.
    • maxRetryDelayInMs: de maximale vertraging tussen nieuwe pogingen. Alleen van toepassing wanneer exponentieel nieuwe pogingen worden uitgevoerd.
    • mode: welke modus voor opnieuw proberen moet worden toegepast, opgegeven door de RetryMode enum. Opties zijn Exponential en Fixed. Standaard ingesteld op Fixed.
    • retryDelayInMs: De hoeveelheid tijd die moet worden gewacht in milliseconden voordat u de volgende poging probeert uit te voeren. Wanneer mode is ingesteld op Exponential, wordt dit gebruikt om de exponentieel toenemende vertragingen tussen nieuwe pogingen te berekenen. Standaard: 30000 milliseconden.
    • timeoutInMs: De hoeveelheid tijd in milliseconden die moet worden gewacht voordat er een time-out optreedt voor de bewerking. Hiermee wordt een nieuwe poging geactiveerd als er nog nieuwe pogingen zijn. Standaardwaarde: 60000 milliseconden.

Een eenvoudig gebruik kan worden { "maxRetries": 4 }.

Voorbeeldgebruik:

{
    retryOptions: {
        maxRetries: 4
    }
}
EventHubConnectionStringProperties

De set eigenschappen die een Event Hub-verbindingsreeks vormen.

EventHubConsumerClientOptions

Beschrijft de opties die kunnen worden opgegeven tijdens het maken van de EventHubConsumerClient.

  • loadBalancingOptions: Opties voor het afstemmen van de partities van eventHubConsumerClient.
  • userAgent: een tekenreeks die moet worden toegevoegd aan de ingebouwde tekenreeks van de gebruikersagent die wordt doorgegeven als een verbindingseigenschap aan de service.
  • webSocketOptions: opties voor het configureren van de kanaalling van de AMQP-verbinding via Web Sockets.
    • websocket: de WebSocket-constructor die wordt gebruikt om een AMQP-verbinding te maken als u ervoor kiest om verbinding te maken via een WebSocket.
    • webSocketConstructorOptions: Opties om door te geven aan de Websocket-constructor wanneer u ervoor kiest om verbinding te maken via een WebSocket.
  • retryOptions: de opties voor opnieuw proberen voor alle bewerkingen op de client/producent/consument.
    • maxRetries: het aantal keren dat de bewerking opnieuw kan worden uitgevoerd in het geval van een fout die opnieuw kan worden geprobeerd.
    • maxRetryDelayInMs: de maximale vertraging tussen nieuwe pogingen. Alleen van toepassing wanneer exponentieel nieuwe pogingen worden uitgevoerd.
    • mode: welke modus voor opnieuw proberen moet worden toegepast, opgegeven door de RetryMode enum. Opties zijn Exponential en Fixed. Standaard ingesteld op Fixed.
    • retryDelayInMs: De hoeveelheid tijd die moet worden gewacht in milliseconden voordat u de volgende poging probeert uit te voeren. Wanneer mode is ingesteld op Exponential, wordt dit gebruikt om de exponentieel toenemende vertragingen tussen nieuwe pogingen te berekenen. Standaard: 30000 milliseconden.
    • timeoutInMs: De hoeveelheid tijd in milliseconden die moet worden gewacht voordat er een time-out optreedt voor de bewerking. Hiermee wordt een nieuwe poging geactiveerd als er nog nieuwe pogingen zijn. Standaardwaarde: 60000 milliseconden.

Een eenvoudig gebruik kan worden { "maxRetries": 4 }.

Voorbeeldgebruik:

{
    retryOptions: {
        maxRetries: 4
    }
}
EventHubProperties

Beschrijft de runtime-informatie van een Event Hub.

EventPosition

Vertegenwoordigt de positie van een gebeurtenis in een Event Hub-partitie, die doorgaans wordt gebruikt bij het aanroepen van de subscribe() methode op een EventHubConsumerClient om de positie in de partitie op te geven waaruit gebeurtenissen moeten worden ontvangen.

Als u een EventPosition wilt ophalen die het begin of einde van de stream aangeeft, gebruikt u respectievelijk de constanten earliestEventPosition en latestEventPosition.

GetEventHubPropertiesOptions

De set opties voor het configureren van het gedrag van getEventHubProperties.

  • abortSignal: een implementatie van de AbortSignalLike-interface om de aanvraag te signaleren om de bewerking te annuleren.
  • parentSpan: de Span of SpanContext die moeten worden gebruikt als de parent van de periode die is gemaakt tijdens het aanroepen van deze bewerking.
GetPartitionIdsOptions

De set opties voor het configureren van het gedrag van getPartitionIds.

  • abortSignal: een implementatie van de AbortSignalLike-interface om de aanvraag te signaleren om de bewerking te annuleren.
  • parentSpan: de Span of SpanContext die moeten worden gebruikt als de parent van de periode die is gemaakt tijdens het aanroepen van deze bewerking.
GetPartitionPropertiesOptions

De set opties voor het configureren van het gedrag van getPartitionProperties.

  • abortSignal: een implementatie van de AbortSignalLike-interface om de aanvraag te signaleren om de bewerking te annuleren.
  • parentSpan: de Span of SpanContext die moeten worden gebruikt als de parent van de periode die is gemaakt tijdens het aanroepen van deze bewerking.
LastEnqueuedEventProperties

Een set informatie over de laatste enqueued gebeurtenis van een partitie, zoals waargenomen door de consument als gebeurtenissen worden ontvangen van de Event Hubs-service

LoadBalancingOptions

Een optiestas voor het configureren van taakverdelingsinstellingen.

OnSendEventsErrorContext

Bevat de gebeurtenissen die niet zijn verzonden naar de Event Hub, de partitie waaraan ze zijn toegewezen en de fout die is opgetreden tijdens het verzenden.

OnSendEventsSuccessContext

Bevat de gebeurtenissen die zijn verzonden naar de Event Hub en de partitie waaraan ze zijn toegewezen.

OperationOptions

Opties voor het configureren van tracering en de abortSignal.

PartitionContext

Interface die de context beschrijft die wordt doorgegeven aan elk van de functies die deel uitmaken van de SubscriptionEventHandlers. Wanneer u een van deze functies implementeert, gebruikt u het contextobject om informatie over de partitie op te halen, evenals de mogelijkheid om het controlepunt te controleren.

PartitionOwnership

Een interface die de details weergeeft over welk exemplaar van een EventProcessor eigenaar is van de verwerking van een bepaalde partitie van een consumentengroep van een Event Hub-exemplaar.

Opmerking: dit wordt intern gebruikt door de EventProcessor en de gebruiker hoeft deze nooit rechtstreeks te maken.

PartitionProperties

Beschrijft de runtime-informatie van een EventHub-partitie.

ReceivedEventData

De interface die de structuur beschrijft van de gebeurtenis die is ontvangen van Event Hub. Gebruik deze functie als referentie bij het maken van de functie processEvents om de gebeurtenissen te verwerken die zijn ontvangen van een Event Hub wanneer u de EventHubConsumerClientgebruikt.

RetryOptions

Beleidsopties voor opnieuw proberen die de modus, het aantal nieuwe pogingen, het interval voor opnieuw proberen, enzovoort bepalen.

SendBatchOptions

Opties voor het configureren van de methode sendBatch op de EventHubProducerClient bij het verzenden van een matrix met gebeurtenissen. Als partitionId is ingesteld, mag partitionKey niet worden ingesteld en omgekeerd.

  • partitionId: de partitie naar deze batch wordt verzonden.
  • partitionKey: een waarde die is gehasht om een partitietoewijzing te produceren.
  • abortSignal: een signaal dat wordt gebruikt om de verzendbewerking te annuleren.
SubscribeOptions

Opties voor het configureren van de methode subscribe op de EventHubConsumerClient. Bijvoorbeeld { maxBatchSize: 20, maxWaitTimeInSeconds: 120, startPosition: { sequenceNumber: 123 } }

Subscription

Interface die het object beschrijft dat wordt geretourneerd door de subscribe() methode op de EventHubConsumerClient.

SubscriptionEventHandlers

Interface die de functies beschrijft die moeten worden geïmplementeerd door de gebruiker die wordt aangeroepen door de EventHubConsumerClient wanneer de subscribe() methode wordt aangeroepen om gebeurtenissen van Event Hub te ontvangen.

TokenCredential

Vertegenwoordigt een referentie die een verificatietoken kan leveren.

TryAddOptions

Opties voor het configureren van het gedrag van de tryAdd methode in de EventDataBatch klasse.

WebSocketImpl

Beschrijft de vereiste vorm van WebSocket-constructors.

WebSocketOptions

Opties voor het configureren van de kanaalling van de AMQP-verbinding via Web Sockets.

Type-aliassen

ProcessCloseHandler

Handtekening van de door de gebruiker geleverde functie die door EventHubConsumerClient is aangeroepen vlak na het stoppen om gebeurtenissen van een partitie te ontvangen.

ProcessErrorHandler

Handtekening van de door de gebruiker geleverde functie die door EventHubConsumerClient wordt aangeroepen voor fouten die optreden bij het ontvangen van gebeurtenissen of bij het uitvoeren van een van de door de gebruiker geleverde functies die zijn doorgegeven aan de subscribe()-methode.

ProcessEventsHandler

Handtekening van de door de gebruiker geleverde functie die door EventHubConsumerClient wordt aangeroepen wanneer een reeks gebeurtenissen wordt ontvangen.

ProcessInitializeHandler

Handtekening van de door de gebruiker geleverde functie die door EventHubConsumerClient wordt aangeroepen vlak voordat gebeurtenissen van een partitie worden ontvangen.

Enums

CloseReason

Een opsomming die de verschillende redenen voor een EventHubConsumerClient aangeeft om te stoppen met het verwerken van gebeurtenissen uit een partitie in een consumentengroep van een Event Hub.

RetryMode

Beschrijft het type Modus voor opnieuw proberen

Functies

createEventDataAdapter(EventDataAdapterParameters)

Een functie waarmee een gebeurtenisgegevensadapter wordt samengesteld. Deze adapter kan worden gebruikt met @azure/schema-registry-avro voor het coderen en decoderen van hoofdtekst in gebeurtenisgegevens.

parseEventHubConnectionString(string)

Parseert de gegeven verbindingsreeks in de verschillende eigenschappen die van toepassing zijn op Azure Event Hubs. De eigenschappen zijn handig om vervolgens een EventHubProducerClient of een EventHubConsumerClient samen te stellen.

Functiedetails

createEventDataAdapter(EventDataAdapterParameters)

Een functie waarmee een gebeurtenisgegevensadapter wordt samengesteld. Deze adapter kan worden gebruikt met @azure/schema-registry-avro voor het coderen en decoderen van hoofdtekst in gebeurtenisgegevens.

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

Parameters

params
EventDataAdapterParameters

parameters voor het maken van de gebeurtenisgegevens

Retouren

MessageAdapter<EventData>

Een gebeurtenisgegevensadapter die gebeurtenisgegevens kan produceren en gebruiken

parseEventHubConnectionString(string)

Parseert de gegeven verbindingsreeks in de verschillende eigenschappen die van toepassing zijn op Azure Event Hubs. De eigenschappen zijn handig om vervolgens een EventHubProducerClient of een EventHubConsumerClient samen te stellen.

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

Parameters

connectionString

string

De verbindingsreeks die is gekoppeld aan het gedeelde toegangsbeleid dat is gemaakt voor de Event Hubs-naamruimte.

Retouren