Aktivační událost a vazby Azure Event Hubs pro Azure Functions

Tento článek vysvětluje, jak pracovat s Event Hubsmi vazbami Azure pro Azure Functions. Azure Functions podporuje triggery a výstupní vazby pro Event Hubs.

Akce Typ
Reakce na události odeslané do datového proudu událostí centra událostí. Trigger
Zápis událostí do datového proudu událostí Výstupní vazba

Přidání do aplikace Functions

Functions 2.x a novější

Práce s triggerem a vazbami vyžaduje, aby bylo nutné odkazovat na příslušný balíček. Balíček NuGet se používá pro knihovny tříd .NET, zatímco sada rozšíření se používá pro všechny ostatní typy aplikací.

Jazyk Přidat podle... Poznámky
C# Instalace balíčku [NuGet]verze 3.x
Skript jazyka C#, Java, JavaScript, Python, PowerShell Registrace sady [rozšíření] Rozšíření [Azure Tools se] doporučuje používat s Visual Studio Code.
Skript jazyka C# (pouze online v Azure Portal) Přidání vazby Informace o aktualizaci existujících rozšíření vazeb bez nutnosti opětovného publikování aplikace funkcí najdete v [tématu Aktualizace rozšíření.]

Event Hubs 5.x a novější

K dispozici je teď nová verze Event Hubs vazby. Zavádí možnost připojení pomocí identity místo tajného klíče. Kurz konfigurace aplikací funkcí se spravovanými identitami najdete v kurzu vytvoření aplikace funkcí s připojeními založenými na identitách. U aplikací .NET se mění také typy, se kterým můžete vytvořit vazbu, a nahradí typy z novějšími typy z Microsoft.Azure.EventHubs Azure.Messaging.EventHubs.

Tato verze rozšíření je dostupná instalací balíčku [NuGet]verze 5.x nebo přidáním ze sady rozšíření v3 přidáním následujícího host.json souboru:

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

Další informace najdete v tématu [Aktualizace rozšíření.]

Functions 1.x

Aplikace Functions 1.x automaticky odkazují na balíček Microsoft.Azure.WebJobs NuGet verze 2.x.

nastavení host.json

Soubor host.json obsahuje nastavení, která řídí chování Event Hubs triggeru. Konfigurace se liší v závislosti na Azure Functions verzi.

Functions 2.x a novější

{
    "version": "2.0",
    "extensions": {
        "eventHubs": {
            "batchCheckpointFrequency": 5,
            "eventProcessorOptions": {
                "maxBatchSize": 256,
                "prefetchCount": 512
            },
            "initialOffsetOptions": {
                "type": "fromStart",
                "enqueuedTimeUtc": ""
            }
        }
    }
}  
Vlastnost Výchozí Description
batchCheckpointFrequency 1 Počet dávek událostí ke zpracování před vytvořením kontrolního bodu kurzoru EventHubu
eventProcessorOptions/maxBatchSize 10 Maximální počet přijatých událostí na smyčku příjmu.
eventProcessorOptions/prefetchCount 300 Výchozí počet před načtením používaný podkladovým objektem EventProcessorHost . Minimální povolená hodnota je 10.
initialOffsetOptions/type1 z startu Umístění ve streamu událostí, ze kterého se má začít zpracovávat, když v úložišti neexistuje kontrolní bod. Možnosti jsou fromStart , fromEnd nebo fromEnqueuedTime . fromEnd zpracovává nové události, které byly po spuštění aplikace funkcí zařaděné do fronty. Platí pro všechny oddíly. Další informace najdete v dokumentaci k EventProcessorOptions.
initialOffsetOptions/enqueuedTimeUtc1 Určuje čas zařazení události do fronty ve streamu, ze kterého se má zahájit zpracování. Pokud initialOffsetOptions/type je nakonfigurovaná fromEnqueuedTime možnost , je toto nastavení povinné. Podporuje čas v libovolném formátu podporovaném dateTime.Parse(),například 2020-10-26T20:31Z . Pro přehlednost byste měli zadat také časové pásmo. Pokud časové pásmo nezadáte, služba Functions předpokládá místní časové pásmo počítače, na kterém běží aplikace funkcí, což je utc při spuštění v Azure. Další informace najdete v dokumentaci k EventProcessorOptions.

1 Podpora pro initialOffsetOptions začíná na EventHubs v4.2.0.

Poznámka

Referenční informace k host.jsv systému Azure Functions 2.x ahost.jsnajdete v referenčních Azure Functions .

Functions 1.x

{
    "eventHub": {
      "maxBatchSize": 64,
      "prefetchCount": 256,
      "batchCheckpointFrequency": 1
    }
}
Vlastnost Výchozí Description
Maxbatchsize 64 Maximální počet přijatých událostí na smyčku příjmu.
prefetchCount Není k dispozici Výchozí předběžné načtení, které bude podkladové používat EventProcessorHost .
batchCheckpointFrequency 1 Počet dávek událostí ke zpracování před vytvořením kontrolního bodu kurzoru EventHubu

Poznámka

Referenční informace k host.jsv systému Azure Functions 1.x najdete vhost.jsreferenčních informace pro Azure Functions 1.x.

Další kroky