Создание функции, активируемой хранилищем BLOB-объектов, в Azure

Узнайте, как создавать функцию, активируемую при добавлении файлов или их обновлении в контейнере хранилища BLOB-объектов.

Примечание.

Редактирование на портале поддерживается только для функций скрипта JavaScript, PowerShell и C#. Редактирование Python на портале поддерживается только при выполнении в плане потребления. По возможности следует разрабатывать функции локально.

Дополнительные сведения об ограничениях на редактирование кода функции в портал Azure см. в разделе об ограничениях разработки в портал Azure.

Необходимые компоненты

  • Подписка Azure. Если у вас еще нет подписки Azure, создайте бесплатную учетную запись, прежде чем начать работу.

Создание приложения-функции Azure

  1. На домашней странице или в меню портала Azure выберите Создать ресурс.

  2. На странице Создать щелкните Вычислительные ресурсы>Приложение-функция.

  3. На странице Основные сведения используйте параметры приложения-функции как указано в таблице ниже:

    Параметр Предлагаемое значение Description
    Подписка Ваша подписка Подписка, в которой создается новое приложение-функцию.
    Группа ресурсов myResourceGroup Имя новой группы ресурсов, в которой создается приложение-функция. Необходимо создать новую группу ресурсов, так как при создании приложений-функций в существующей группе ресурсов существуют известные ограничения.
    Имя приложения-функции Глобально уникальное имя Имя, которое идентифицирует ваше новое приложение-функцию. Допустимые символы: a-z (без учета регистра), 0-9 и -.
    Вы хотите развернуть код или образ контейнера? Код Параметр публикации файлов кода или контейнера Docker.
    Стек среды выполнения Предпочитаемый язык Выберите среду выполнения, которая поддерживает нужный функциональный язык программирования. Редактирование на портале доступно только для скрипта JavaScript, PowerShell, Python, TypeScript и C#. Библиотека классов C# и функции Java должны быть разработаны локально.
    Версия Номер версии Выберите версию установленной среды выполнения.
    Регион Предпочтительный регион Выберите регион, ближайший к вам или к другим службам, к которым могут обращаться функции.
    Операционная система Windows Операционная система предварительно выбирается на основе выбора стека среды выполнения, но при необходимости можно изменить этот параметр. Редактирование на портале поддерживается только в Windows. Публикация контейнеров поддерживается только в Linux.
    Варианты размещения и планы Потребление (бессерверный) План размещения, который определяет выделение ресурсов в приложении-функции. В плане потребления по умолчанию ресурсы добавляются динамически в соответствии с потребностями функций. При таком бессерверном размещении вы платите только за время выполнения функций. План "Премиум" также предлагает динамическое масштабирование. Когда выполняется план службы приложений необходимо управлять масштабированием приложения-функции.
  4. Примите параметры по умолчанию для создания новой учетной записи хранения на вкладке служба хранилища и нового экземпляра Application Insights на вкладке "Мониторинг". Вы также можете использовать существующую учетную запись хранения или экземпляр приложения Аналитика.

  5. Выберите "Проверка и создание ", чтобы просмотреть выбранную конфигурацию приложения, а затем выберите "Создать ", чтобы подготовить и развернуть приложение-функцию.

  6. Выберите значок Уведомления в правом верхнем углу портала. Вы должны увидеть сообщение Развертывание выполнено.

  7. Выберите Перейти к ресурсу для просмотра нового приложения-функции. Можно также установить флажок Закрепить на панели мониторинга. Это упростит возвращение к этому ресурсу приложения-функции из панели мониторинга.

    Screenshot of deployment notification.

Вы успешно создали новое приложение-функцию.

Function app successfully created.

Затем создайте функцию в новом приложении-функции.

Создание функции, активируемой хранилищем BLOB-объектов Azure

  1. В приложении-функции выберите "Обзор" и нажмите кнопку "Создать " в разделе "Функции".

  2. В разделе "Выбор шаблона" прокрутите вниз и выберите шаблон триггера Хранилище BLOB-объектов Azure.

  3. В сведениях о шаблоне настройте новый триггер с параметрами, указанными в этой таблице, а затем нажмите кнопку "Создать".

    Параметр Предлагаемое значение Description
    Новая функция Уникальное для вашего приложения-функции Имя функции, активируемой большим двоичным объектом.
    Путь samples-workitems/{name} Расположение в хранилище BLOB-объектов отслеживается. Имя файла большого двоичного объекта передается в привязке как параметр name.
    Подключение к учетной записи хранения AzureWebJobsStorage Вы можете использовать подключение к учетной записи хранения, которое уже используется вашим приложением-функцией, или создать его.

    Azure создает функцию служба хранилища триггера BLOB-объекта на основе предоставленных значений.

Затем создайте контейнер samples-workitems.

Создание контейнера

  1. В функции на странице Обзор выберите группу ресурсов.

    Select your Azure portal resource group.

  2. Найдите и выберите учетную запись хранения своей группы ресурсов.

    Access the storage account.

  3. Выберите Контейнеры, а затем нажмите + Контейнер.

    Add container to your storage account in the Azure portal.

  4. В поле Имя введите samples-workitems и нажмите кнопку Создать.

    Name the storage container.

Теперь, когда у вас есть контейнер больших двоичных объектов, вы можете проверить функцию, отправив файл в контейнер.

Проверка функции

  1. На портале Azure перейдите к вашей функции, в нижней части страницы разверните Журналы и убедитесь, что потоковая передача журналов не остановлена.

    Expand the log in the Azure portal.

  2. В отдельном окне браузера перейдите к группе ресурсов на портале Azure и выберите учетную запись хранения.

  3. Нажмите Контейнеры, а затем выберите контейнер samples-workitems.

    Go to your samples-workitems container in the Azure portal.

  4. Выберите Отправить, а затем щелкните значок папки, чтобы выбрать файл для отправки.

    Upload a file to the blob container.

  5. Перейдите к файлу на вашем локальном компьютере, например к файлу изображения, и выберите его. Выберите Открыть, затем — Передать.

  6. Вернитесь к журналам функции и убедитесь, что большой двоичный объект был считан.

    View message in the logs.

    Примечание.

    Если ваше приложение-функция выполняется в рамках плана потребления по умолчанию, между добавлением или обновлением большого двоичного объекта и активацией функции могут возникнуть задержки до нескольких минут. Выполняйте свое приложение-функцию в рамках плана службы приложений, если требуется малая задержка в функции, активируемой большим двоичным объектом.

Очистка ресурсов

Другие краткие руководства в этой коллекции созданы на основе этого документа. Если вы планируете работать с последующими руководствами или краткими руководствами, а также или любыми службами, созданными при работе с этим руководством, не очищайте ресурсы.

Под ресурсами в Azure подразумеваются приложения-функции, функции, учетные записи хранения и т. д. Они объединяются в группы ресурсов, при удалении которых удаляются и все данные в них.

Вы создали ресурсы для завершения этих кратких руководств. За них вам могут быть выставлены счета в зависимости от состояния учетной записи и цен на службы. Если вам больше не нужны ресурсы, их можно удалить следующим образом:

  1. На портале Azure перейдите на страницу Resource group (Группа ресурсов).

    Чтобы перейти на эту страницу со страницы приложения-функции, перейдите на вкладку Обзор,и щелкните ссылку в разделе Группа ресурсов.

    Screenshot that shows select the resource group to delete from the function app page.

    Чтобы перейти на эту страницу с панели управления, выберите Resource groups (Группы ресурсов), а затем выберите группу ресурсов, которая использовалась в этой статье.

  2. На странице Группа ресурсов просмотрите список включенных ресурсов и убедитесь, что именно их нужно удалить.

  3. Выберите Удалить группу ресурсов и следуйте инструкциям.

    На удаление может потребоваться несколько минут. После этого на несколько секунд появится уведомление. Кроме того, можно выбрать значок колокольчика в верхней части страницы, чтобы просмотреть уведомление.

Следующие шаги

Вы создали функцию, которая выполняется при добавлении или обновлении большого двоичного объекта в хранилище BLOB-объектов. Дополнительные сведения о триггерах хранилища BLOB-объектов см.в статье Привязки больших двоичных объектов службы хранилища для Функций Azure.

Итак, вы создали первую функцию. Теперь давайте добавим к ней выходную привязку, которая позволяет записывать сообщения в очередь службы хранилища.