Триггер и привязки Центров событий Azure для службы "Функции Azure"

Здесь объясняется, как работать с привязками Центров событий Azure для службы "Функции Azure". Функции Azure поддерживают привязки триггера и выходные привязки для Центров событий Azure.

Действие Тип
Реагирование на события, отправляемые в поток событий Центра событий. Триггер
Запись событий в поток событий Выходная привязка

Добавление кода в приложение-функцию

Функции 2.x и более поздних версий

Для работы с триггерами и привязками вам нужно указать ссылку на подходящий пакет. Пакет NuGet используется для работы с библиотеками классов .NET, а пакет расширений — для всех других типов приложений.

Язык Способ добавления Примечания
C# Установка пакета NuGet версии 3.x
Скрипт C#, Java, JavaScript, Python, PowerShell Регистрация пакета расширений Рекомендуется использовать расширение средств Azure с Visual Studio Code.
Скрипт C# (только в сети на портале Azure) Добавление привязки См. дополнительные сведения об обновлении существующих расширений привязки без необходимости переиздавать приложение-функции в разделе Обновление расширений.

Расширение Центров событий 5.x и более поздних версий

Теперь доступна новая версия расширения "привязки концентраторов событий". В нем вводится возможность подключения с использованием удостоверения, а не секрета. Руководство по настройке приложений-функций с управляемыми удостоверениями см. в руководстве создание приложения-функции с помощью подключений на основе удостоверений. Для приложений .NET также изменяются типы, к которым можно выполнить привязку, заменяя типы Microsoft.Azure.EventHubs с более новыми типами из Microsoft.Azure.EventHubs.

эта версия расширения доступна, если установить пакет NuGetверсии 5. x или добавить его из набора расширений v3, добавив в файл следующее:

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

Примечание

версия 3. x пакета расширений в настоящее время не включает таблицу служба хранилища привязки. если приложению требуется служба хранилища таблиц, необходимо продолжить использовать версию 2. x сейчас.

Дополнительные сведения см. в разделе Обновление расширений.

Функции 1.x

В приложения Функции 1.x автоматически добавляется ссылка на пакет NuGet Microsoft.Azure.WebJobs версии 2.x.

Параметры файла host.json

Файл Host. JSON содержит параметры, управляющие поведением триггера концентраторов событий. Конфигурация будет разной в зависимости от версии Функций Azure.

Функции 2.x и более поздних версий

{
    "version": "2.0",
    "extensions": {
        "eventHubs": {
            "batchCheckpointFrequency": 5,
            "eventProcessorOptions": {
                "maxBatchSize": 256,
                "prefetchCount": 512
            },
            "initialOffsetOptions": {
                "type": "fromStart",
                "enqueuedTimeUtc": ""
            }
        }
    }
}  
Свойство По умолчанию Описание
batchCheckpointFrequency 1 Количество пакетов событий, которые необходимо обработать перед созданием контрольной точки курсора EventHub.
eventProcessorOptions/maxBatchSize 10 Максимальное число событий, получаемых в цикле получения.
eventProcessorOptions/prefetchCount 300 Счетчик предварительной выборки по умолчанию, используемый базовым EventProcessorHost. Минимальное допустимое значение — 10.
initialOffsetOptions/type1 fromStart Расположение в потоке событий, с которого следует начать обработку, когда контрольная точка не существует в хранилище. Может принимать значение fromStart, fromEnd или fromEnqueuedTime. fromEnd обрабатывает новые события, которые были поставлены в очередь после начала выполнения приложения-функции. Применяется ко всем разделам. Дополнительные сведения см. в документации по EventProcessorOptions.
initialOffsetOptions/enqueuedTimeUtc1 Недоступно Указывает время в очереди для события в потоке, с которого начинается обработка. Если для initialOffsetOptions/type настроено значение fromEnqueuedTime, этот параметр является обязательным. Поддерживает время в любом формате, поддерживаемом DateTime. Parse (), например . Для ясности следует также указать часовой пояс. Если часовой пояс не указан, Функции предполагают, что используется местный часовой пояс компьютера, на котором запущено приложение-функция (при выполнении в Azure это время в формате UTC). Дополнительные сведения см. в документации по EventProcessorOptions.

1 поддержка начинается с EventHubs v 4.2.0.

Функции 1.x

{
    "eventHub": {
      "maxBatchSize": 64,
      "prefetchCount": 256,
      "batchCheckpointFrequency": 1
    }
}
Свойство По умолчанию Описание
maxBatchSize 64 Максимальное число событий, получаемых в цикле получения.
prefetchCount Недоступно Предварительная выборка по умолчанию, используемая базовым EventProcessorHost.
batchCheckpointFrequency 1 Количество пакетов событий, которые необходимо обработать перед созданием контрольной точки курсора EventHub.

Примечание

См. сведения о файле host.json в Функциях Azure версии 1.x.

Дальнейшие действия