Azure Işlevleri için Azure Event Hubs tetikleyicisi ve bağlamaları
Bu makalede Azure Işlevleri için azure Event Hubs bağlamalarıyla nasıl çalışılacağı açıklanmaktadır. Azure Işlevleri Event Hubs için tetikleyiciyi ve çıkış bağlamalarını destekler.
| Eylem | Tür |
|---|---|
| Bir olay hub 'ı olay akışına gönderilen olaylara yanıt verir. | Tetikleyici |
| Olayları bir olay akışına yazma | Çıkış bağlama |
Işlevler uygulamanıza ekleme
İşlevler 2.x ve üzeri
Tetikleyici ve bağlamalarla çalışma, uygun pakete başvurmanız gerekir. uzantı paketi diğer tüm uygulama türleri için kullanıldığında, .net sınıf kitaplıkları için NuGet paketi kullanılır.
| Dil | Ekleme ölçütü... | Açıklamalar |
|---|---|---|
| C# | sürüm 3. x [NuGet paketini]yükleme | |
| C# betiği, Java, JavaScript, Python, PowerShell | Uzantı paketi kaydediliyor | [Azure Araçları uzantısının] Visual Studio Code ile kullanılması önerilir. |
| C# betiği (yalnızca çevrimiçi-Azure portal) | Bağlama ekleme | İşlev uygulamanızı yeniden yayımlamak zorunda kalmadan mevcut bağlama uzantılarını güncelleştirmek için bkz. uzantılarınızı güncelleştirme. |
Event Hubs uzantısı 5. x ve üzeri
Event Hubs bağlamaları uzantısının yeni bir sürümü kullanıma sunuldu. Gizli anahtar yerine bir kimlik kullanarak bağlanmaözelliği sunar. İşlev uygulamalarınızı yönetilen kimliklerle yapılandırmaya yönelik bir öğretici için bkz. kimlik tabanlı bağlantılarla işlev uygulaması oluşturma öğreticisi. .NET uygulamaları için, aynı zamanda, bu tür Microsoft.Azure.EventHubs Azure. Messaging. EventHubs' deki türleri daha yeni türlerle değiştirerek, bağlayacağınız türleri de değiştirir.
bu uzantı sürümü, sürüm 5. x NuGet paketiyüklenerek kullanılabilir veya dosyanıza aşağıdakileri ekleyerek v3 paketinden eklenebilirler host.json :
{
"version": "2.0",
"extensionBundle": {
"id": "Microsoft.Azure.Functions.ExtensionBundle",
"version": "[3.3.0, 4.0.0)"
}
}
Daha fazla bilgi edinmek için bkz. uzantılarınızı güncelleştirme.
İşlevler 1.x
- x uygulamaları için Microsoft. Azure. webjobs NuGet paketi, sürüm 2. x başvurusu otomatik olarak bir başvuruya sahip.
Host. JSON ayarları
Host. JSON dosyası Event Hubs tetikleyicisinin davranışını denetleyen ayarları içerir. Yapılandırma, Azure Işlevleri sürümüne bağlı olarak farklılık görür.
İşlevler 2.x ve üzeri
{
"version": "2.0",
"extensions": {
"eventHubs": {
"batchCheckpointFrequency": 5,
"eventProcessorOptions": {
"maxBatchSize": 256,
"prefetchCount": 512
},
"initialOffsetOptions": {
"type": "fromStart",
"enqueuedTimeUtc": ""
}
}
}
}
| Özellik | Varsayılan | Description |
|---|---|---|
| Batchcheckpointflik | 1 | Bir EventHub imleç denetim noktası oluşturmadan önce işlenecek olay toplu işlemlerinin sayısı. |
| eventProcessorOptions/maxBatchSize | 10 | Alma döngüsü başına alınan en yüksek olay sayısı. |
| eventProcessorOptions/prefetchCount | 300 | Temel tarafından kullanılan varsayılan önceden getirme sayısı EventProcessorHost . İzin verilen en düşük değer 10 ' dur. |
| ınitialoffsetoptions/tür1 | fromStart | Depolamadaki bir denetim noktası mevcut olmadığında işlemenin başlatılacağı olay akışındaki konum. Seçenekler fromStart , fromEnd veya fromEnqueuedTime . fromEnd işlev uygulaması çalışmaya başladıktan sonra sıraya alınan yeni olayları işler. Tüm bölümler için geçerlidir. Daha fazla bilgi için Eventprocessoroptions belgelerinebakın. |
| ınitialoffsetoptions/enqueuedTimeUtc1 | Yok | İşlemin başlatılacağı akışta olayın sıraya alınma süresini belirtir. initialOffsetOptions/typeOlarak yapılandırıldığında fromEnqueuedTime , bu ayar zorunludur. DateTime. Parse ()tarafından desteklenen herhangi bir biçimdeki süreyi destekler 2020-10-26T20:31Z . Açıklık için bir saat dilimi de belirtmeniz gerekir. Saat dilimi belirtilmediğinde Işlevler, Azure üzerinde çalışırken UTC olan işlev uygulamasını çalıştıran makinenin yerel saat dilimini varsayar. Daha fazla bilgi için Eventprocessoroptions belgelerinebakın. |
1 desteği initialOffsetOptions eventhubs v 4.2.0ile başlar.
Not
Azure Işlevleri 2. x ve ötesi 'daki host.jsbaşvurusu için bkz. Azure işlevleri için başvuruhost.js.
İşlevler 1.x
{
"eventHub": {
"maxBatchSize": 64,
"prefetchCount": 256,
"batchCheckpointFrequency": 1
}
}
| Özellik | Varsayılan | Description |
|---|---|---|
| maxBatchSize | 64 | Alma döngüsü başına alınan en yüksek olay sayısı. |
| prefetchCount | yok | Temel tarafından kullanılacak varsayılan ön getirme EventProcessorHost . |
| Batchcheckpointflik | 1 | Bir EventHub imleç denetim noktası oluşturmadan önce işlenecek olay toplu işlemlerinin sayısı. |
Not
Azure Işlevleri 1. x ' teki host.jsbaşvurusu için bkz. Azure işlevleri için başvuruhost.js, 1. x.