Azure Event Hubs trigger en bindingen voor Azure Functions

In dit artikel wordt uitgelegd hoe u kunt werken met Azure Event hubs -bindingen voor Azure functions. Azure Functions ondersteunt trigger-en uitvoer bindingen voor Event Hubs.

Bewerking Type
Reageren op gebeurtenissen die naar een Event Hub gebeurtenis stroom worden verzonden. Trigger
Gebeurtenissen naar een gebeurtenis stroom schrijven Uitvoer binding

Toevoegen aan uw Functions-app

Functions 2.x en hoger

Als u met de trigger en bindingen wilt werken, moet u verwijzen naar het juiste pakket. Het NuGet-pakket wordt gebruikt voor .NET-klassebibliotheken, terwijl de extensiebundel wordt gebruikt voor alle andere toepassingstypen.

Taal Toevoegen door... Opmerkingen
C# Het [NuGet-pakket installeren,]versie 3.x
C#-script, Java, JavaScript, Python, PowerShell De extensiebundel [registreren] De [extensie Azure Tools wordt] aanbevolen voor gebruik met Visual Studio Code.
C#-script (alleen online in Azure Portal) Een binding toevoegen Zie Uw extensies bijwerken als u bestaande bindingsextensies wilt bijwerken zonder dat u de functie-app [opnieuw moet publiceren.]

Event Hubs extensie 5.x en hoger

Er is nu een nieuwe versie van Event Hubs-extensie voor bindingen beschikbaar. Het introduceert de mogelijkheid om verbinding te maken met behulp van een identiteit in plaats van een geheim. Zie de zelfstudie Een functie-app maken met op identiteit gebaseerde verbindingen voor een zelfstudie over het configureren van uw functie-apps met beheerde identiteiten. Voor .NET-toepassingen worden ook de typen gewijzigd die u kunt verbinden, en worden de typen van vervangen door nieuwere Microsoft.Azure.EventHubs typen van Azure.Messaging.EventHubs.

Deze extensieversie is beschikbaar door het NuGet-pakket, versie 5.x, te installeren of door het volgende toe te voegen in uw bestand vanuit de extensiebundel host.json v3:

{
  "version": "2.0",
  "extensionBundle": {
    "id": "Microsoft.Azure.Functions.ExtensionBundle",
    "version": "[3.3.0, 4.0.0)"
  }
}

Zie Uw extensies bijwerken [voor meer informatie.]

Functions 1.x

Functions 1.x-apps hebben automatisch een verwijzing naar het Microsoft.Azure.WebJobs NuGet-pakket, versie 2.x.

host.json-instellingen

Het bestand host.json bevat instellingen die het gedrag voor de trigger Event Hubs bepalen. De configuratie verschilt afhankelijk van de versie van Azure Functions.

Functions 2.x en hoger

{
    "version": "2.0",
    "extensions": {
        "eventHubs": {
            "batchCheckpointFrequency": 5,
            "eventProcessorOptions": {
                "maxBatchSize": 256,
                "prefetchCount": 512
            },
            "initialOffsetOptions": {
                "type": "fromStart",
                "enqueuedTimeUtc": ""
            }
        }
    }
}  
Eigenschap Standaard Beschrijving
batchCheckpointFrequency 1 Het aantal gebeurtenisbatches dat moet worden verwerkt voordat een controlepunt voor een EventHub-cursor wordt gemaakt.
eventProcessorOptions/maxBatchSize 10 Het maximale gebeurtenisaantal dat per ontvangstlus wordt ontvangen.
eventProcessorOptions/prefetchCount 300 Het standaardaantal voor vooraf ophalen dat wordt gebruikt door de onderliggende EventProcessorHost. De minimaal toegestane waarde is 10.
initialOffsetOptions/type1 fromStart De locatie in de gegevensstroom van de gebeurtenis waar de verwerking moet worden gestart als een controlepunt niet aanwezig is in de opslag. De beschikbare opties zijn fromStart , fromEnd en fromEnqueuedTime. fromEnd verwerkt nieuwe gebeurtenissen die in de wachtrij zijn geplaatst nadat de functie-app werd uitgevoerd. Dit is van toepassing op alle partities. Raadpleeg de documentatie over EventProcessorOptions voor meer informatie.
initialOffsetOptions/enqueuedTimeUtc1 N.v.t. Hiermee wordt de wachtrijtijd aangegeven van de gebeurtenis in de gegevensstroom waar de verwerking moet beginnen. Wanneer initialOffsetOptions/type is geconfigureerd als fromEnqueuedTime, is deze instelling verplicht. Ondersteunt tijd in alle indelingen die worden ondersteund door DateTime.Parse(), zoals 2020-10-26T20:31Z. U kunt het best ook een tijdzone opgeven. Als er geen tijdzone is opgegeven, gebruikt Functions de lokale tijdzone van de computer waarop de functie-app wordt uitgevoerd. Als u Azure gebruikt, is dat UTC. Raadpleeg de documentatie over EventProcessorOptions voor meer informatie.

1 Ondersteuning voor initialOffsetOptions begint met EventHubs v4.2.0.

Notitie

Zie Naslaginformatie over host.json voor Azure Functions voor naslaginformatie over host.json in Azure Functions 2.x en hoger.

Functions 1.x

{
    "eventHub": {
      "maxBatchSize": 64,
      "prefetchCount": 256,
      "batchCheckpointFrequency": 1
    }
}
Eigenschap Standaard Beschrijving
maxBatchSize 64 Het maximale gebeurtenisaantal dat per ontvangstlus wordt ontvangen.
prefetchCount n.v.t. Het standaardaantal voor vooraf ophalen dat wordt gebruikt door de onderliggende EventProcessorHost.
batchCheckpointFrequency 1 Het aantal gebeurtenisbatches dat moet worden verwerkt voordat een controlepunt voor een EventHub-cursor wordt gemaakt.

Notitie

Zie Naslaginformatie over host.json voor Azure Functions 1.x voor naslaginformatie over host.json voor Azure Functions 1.x.

Volgende stappen