Создание рабочего процесса интеграции с использованием приложений Azure Logic Apps с одним клиентом и редактора Visual Studio Code

В этой статье описано, как создать пример автоматизированного рабочего процесса интеграции с использованием типа ресурса Приложение логики (стандартная версия) , редактора Visual Studio Code и расширения Azure Logic Apps (стандартная версия) . При создании этого рабочего процесса приложения логики в Visual Studio Code, можно запустить и протестировать рабочий процесс в своей локальной среде разработки.

Когда все будет готово, можно выполнить развертывание в среде Azure Logic Apps с одним клиентом или в любом другом расположении, где можно использовать среду "Функции Azure", благодаря обновленной контейнерной среде выполнения Azure Logic Apps. По сравнению с расширением Azure Logic Apps (версия потребления) с поддержкой нескольких клиентов, которое работает в многопользовательской среде Azure Logic Apps, расширение Azure Logic Apps (стандартная версия) с поддержкой одного клиента предоставляет возможность создания приложения логики со следующими атрибутами.

  • Тип ресурса Приложение логики (стандартная версия) может содержать несколько рабочих процессов с отслеживанием и без отслеживания состояния, которые выполняются локально в текущей среде разработки, в среде Azure Logic Apps с одним клиентом или в любом другом расположении, где можно использовать среду "Функции Azure", например в контейнерах. Этот атрибут обеспечивает гибкость и возможность переноса рабочих процессов.

  • В ресурсе Приложение логики (стандартная версия) рабочие процессы в одном приложении логики и клиенте выполняются в том же процессе, что и обновленная среда выполнения Azure Logic Apps, поэтому они используют одни и те же ресурсы и обеспечивают лучшую производительность.

  • Можно развернуть ресурс Приложение логики (стандартная версия) непосредственно в Azure или в любом другом расположении, где можно использовать среду "Функции Azure", включая контейнеры.

Дополнительные сведения о типе ресурса Приложение логики (стандартная версия) и модели с одним клиентом см. в статье Сравнение моделей с одним и несколькими клиентами и средой служб интеграции.

Хотя пример рабочего процесса основан на использовании облака и состоит всего из двух этапов, можно создавать рабочие процессы из сотен операций, которые могут подключать широкий спектр приложений, данных, служб и систем в облачных, локальных и гибридных средах. Пример рабочего процесса начинается со встроенного триггера запроса, затем выполняется операция Office 365 Outlook. Триггер создает вызываемую конечную точку для рабочего процесса и ожидает входящего HTTPS-запроса от любого вызывающего объекта. Когда триггер получает запрос и срабатывает, следующее действие выполняется путем отправки электронного сообщения на указанный адрес электронной почты вместе с выбранными выходными данными триггера.

Совет

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

Чтобы создать этот пример рабочего процесса с помощью портала Azure, выполните действия, описанные в статье Создание рабочих процессов интеграции в Azure Logic Apps с одним клиентом и на портале Azure. Оба варианта предоставляют возможность разрабатывать, запускать и развертывать рабочие процессы приложений логики в одних и тех же средах. Однако с помощью редактора Visual Studio Code можно локально разрабатывать, тестировать и запускать рабочие процессы в своей среде разработки.

Снимок экрана: Visual Studio Code, проект приложения логики и рабочий процесс.

Со временем вы сможете выполнить следующие высокоуровневые задачи.

  • Создание проекта для приложения логики и пустого рабочего процесса с отслеживанием состояния.
  • Добавление триггера и действия.
  • Запуск, тестирование, отладка и анализ журнала выполнения в локальной среде.
  • Поиск сведений о доменном имени для доступа к брандмауэру.
  • Развертывание в Azure и включение Application Insights (необязательно).
  • Управление развернутым приложением логики в Visual Studio Code и на портале Azure.
  • включение журнала выполнения для рабочих процессов без отслеживания состояния.
  • включение или открытие Application Insights после развертывания;

Предварительные требования

Доступ и подключения

  • Доступ к Интернету для загрузки требований, подключения из редактора Visual Studio Code к своей учетной записи Azure и публикация из редактора Visual Studio Code в Azure.

  • Учетная запись и подписка Azure. Если у вас нет ее, вы можете зарегистрироваться для получения бесплатной учетной записи Azure.

  • Чтобы создать такой же пример рабочего процесса, как в этой статье, потребуется учетная запись электронной почты Office 365 Outlook, которая использует для входа рабочую или учебную учетную запись Microsoft.

    Если выбрать другой соединитель электронной почты, например Outlook.com, все равно можно следовать инструкциям, приведенным в примере, и общие действия будут одинаковыми. Однако в некоторых случаях могут быть отличия. Например, если вы используете соединитель Outlook.com, вам нужно будет войти в систему с личной учетной записью Майкрософт.

Требования к системе хранения данных

Для локальной разработки в редакторе Visual Studio Code необходимо настроить локальное хранилище данных для проекта приложения логики и рабочих процессов, которые будут использоваться для запуска в локальной среде разработки. Можно использовать и запустить эмулятор хранения Azurite в качестве локального хранилища данных.

  1. Загрузите и установите Azurite 3.12.0 или более поздней версии.
  2. Перед запуском приложения логики обязательно запустите эмулятор.

Дополнительные сведения см. в документации по Azurite.

Инструменты

  • Visual Studio Code, предоставляется бесплатно. Также скачайте и установите следующие средства для Visual Studio Code, если у вас их еще нет:

    • Расширение учетной записи Azure — предоставляет единую общую фильтрацию входов и подписок Azure для всех остальных расширений Azure в Visual Studio Code.

    • C# для расширения Visual Studio Code — позволяет запускать приложение логики с помощью функции F5.

    • Azure Functions Core Tools 3.0.3477 или более поздней версии при использовании версии установщика Майкрософт (MSI), то есть func-cli-3.0.3477-x*.msi.

      Эти инструменты включают версию той же среды выполнения, которая обеспечивает работу среды выполнения "Функции Azure" и которую расширение Azure Logic Apps (стандартная версия) использует в редакторе Visual Studio Code.

      Важно!

      Если у вас установлена более ранняя версия, то сначала удалите эту версию или убедитесь в том, что переменная среды PATH указывает на версию, которую вы загрузили и установили.

    • Расширение Azure Logic Apps (стандартная версия) для редактора Visual Studio Code.

      Важно!

      Проекты, созданные с использованием более ранних версий расширений, больше не работают. Чтобы продолжить работу, удалите все более ранние версии и повторно создайте проекты приложений логики.

      Чтобы установить расширение Azure Logic Apps (стандартная версия) , выполните следующие действия.

      1. В Visual Studio Code выберите пункт Расширения на панели инструментов слева.

      2. В поле поиска расширений введите azure logic apps standard. В списке результатов выберите Azure Logic Apps (стандартная версия) > Установить.

        После завершения установки расширение появится в списке Расширения: установленные.

        Снимок экрана, показывающий редактор Visual Studio Code с установленным расширением Azure Logic Apps (стандартная версия)

        Совет

        Если расширение не отображается в списке установленных расширений, попробуйте перезапустить Visual Studio Code.

      В настоящее время можно установить одновременно расширения "Версия потребления" (несколько клиентов) и "Стандартная версия" (один клиент). Процесс разработки в некоторой степени различается, но подписка Azure может включать в себя как типы приложений "Стандартная версия", так и типы приложений "Версия потребления". Редактор Visual Studio Code показывает все развернутые приложения логики в подписке Azure, но организует их по расширениям: Azure Logic Apps (версия потребления) и Azure Logic Apps (стандартная версия) .

  • Чтобы использовать действие Операции встроенного кода, запускающее JavaScript, установите Node.js версии 10.x.x, 11.x.x или 12.x.x.

    Совет

    Для Windows скачайте версию MSI. Если вместо этого используется ZIP-версия, обеспечьте доступ к Node.js вручную, используя переменную среды PATH для вашей операционной системы.

  • Для локального запуска триггеров и действий на основе веб-перехватчика, например встроенного триггера веб-перехватчика HTTP, в Visual Studio Code необходимо настроить переадресацию для URL-адреса обратного вызова.

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

  • Если ресурсы приложения логики создаются с использованием параметров, которые поддерживают использование Application Insights, можно дополнительно включить ведение журнала диагностики и трассировку для приложения логики. Это можно сделать либо при создании приложения логики, либо после его развертывания. Для этого нужен экземпляр Application Insights, но его можно создать заранее, при создании приложения логики или после его развертывания.

Настройка Visual Studio Code

  1. Чтобы убедиться, что все расширения установлены правильно, перезагрузите или перезапустите Visual Studio Code.

  2. Убедитесь, что Visual Studio Code автоматически находит и устанавливает обновления расширений, чтобы все расширения могли получить последние обновления. В противном случае удалите устаревшую версию и установите последнюю версию вручную.

    1. В меню Файл выберите Настройки > Параметры.

    2. На вкладке Пользователь найдите раздел Компоненты > Расширения.

    3. Убедитесь, что опции Автоматические проверки обновлений и Автоматическое обновление выбраны.

По умолчанию для расширения Azure Logic Apps (стандартная версия) заданы и настроены следующие параметры.

  • Azure Logic Apps Standard: Project Runtime, для которого задана версия ~ 3.

    Примечание

    Эта версия необходима для использования действий Операции встроенного кода.

  • Azure Logic Apps Standard: Experimental View Manager, который включает в Visual Studio Code последний конструктор. Если в конструкторе возникают проблемы, например при перетаскивании элементов, отключите этот параметр.

Чтобы найти и подтвердить эти параметры, выполните следующие действия.

  1. В меню Файл выберите Настройки > Параметры.

  2. На вкладке Пользователь выберите > Расширения > Azure Logic Apps (стандартная версия) .

    Например, можно найти параметр Azure Logic Apps Standard: Project Runtime здесь или использовать поле поиска для поиска других параметров.

    Снимок экрана показывает параметры Visual Studio Code для расширения "Azure Logic Apps (стандартная версия)"

Подключение к учетной записи Azure

  1. На панели действий Visual Studio Code щелкните значок Azure.

    Снимок экрана: панель действий Visual Studio Code и выбранный значок Azure.

  2. В области Azure в разделе Azure: Logic Apps (стандартная версия) выберите Вход в Azure. Когда появится страница проверки подлинности Visual Studio Code, выполните вход под учетной записью Azure.

    Снимок экрана: область Azure и выбранная ссылка для входа в Azure.

    После входа на панели Azure отобразятся подписки в учетной записи Azure. Если также есть общедоступное расширение, все приложения логики, созданные с помощью этого расширения, можно найти в разделе Logic Apps, а не в Logic Apps (стандартная версия) .

    Если ожидаемые подписки не отображаются или вы хотите, чтобы на панели отображались только определенные подписки, выполните следующие действия:

    1. В списке подписок наведите указатель мыши на первую подписку, так чтобы появилась кнопка Выбор подписок (значок фильтра). Щелкните значок фильтра.

      Снимок экрана: панель Azure и выбранный значок фильтра.

      Либо в строке состояния Visual Studio Code выберите свою учетную запись Azure.

    2. Когда появится список других подписок, выберите нужные подписки и убедитесь, что выбрано значение ОК.

Создание локального проекта

Перед созданием приложения логики создайте локальный проект, чтобы можно было управлять приложением логики, запускать его и развертывать из Visual Studio Code. Базовый проект аналогичен проекту Функций Azure, также известному как проект приложения-функции. Однако эти типы проектов отделены друг от друга, поэтому приложения логики и приложения-функции не могут сосуществовать в одном и том же проекте.

  1. На компьютере создайте пустую локальную папку для проекта, который вы затем создадите в Visual Studio Code.

  2. В редакторе Visual Studio Code закройте все открытые папки.

  3. На панели Azure рядом с Azure: Logic Apps (стандартная версия) выберите Создать новый проект (значок с изображением папки и разряда молнии).

    Снимок экрана: панель инструментов на панели Azure с выбранным параметром "Создать новый проект".

  4. Если брандмауэр Защитника Windows предлагает предоставить доступ к сети для Code.exe, т. е. Visual Studio Code, и для func.exe, т. е. Azure Functions Core Tools, выберите Частные сети, такие как домашняя или рабочая сеть > Разрешить доступ.

  5. Откройте папку, в которой вы создали папку проекта, выберите эту папку и переходите к следующим действиям.

    Снимок экрана: диалоговое окно "Выберите папку" с созданной папкой проекта и выбранной кнопкой "Выбрать".

  6. В появившемся списке шаблонов выберите Рабочий процесс с отслеживанием состояния или Рабочий процесс без отслеживания состояния. В этом примере выбран Рабочий процесс с отслеживанием состояния.

    Снимок экрана: список шаблонов рабочих процессов с выбранным параметром "Рабочий процесс с отслеживанием состояния".

  7. Укажите имя рабочего процесса и нажмите клавишу ВВОД. В этом примере используется имя Fabrikam-Stateful-Workflow.

    Снимок экрана: поле "Создать новый рабочий процесс с отслеживанием состояния (3/4)" с именем рабочего процесса "Fabrikam-Stateful-Workflow".

    Visual Studio Code создаст проект и откроет в редакторе кода файл workflow.js для вашего рабочего процесса.

    Примечание

    Если вам будет предложено выбрать способ открытия проекта, выберите Открыть в текущем окне, если хотите открыть проект в текущем окне Visual Studio Code. Чтобы открыть новый экземпляр для Visual Studio Code, выберите Открыть в новом окне.

  8. На панели инструментов Visual Studio откройте панель обозревателя, если она еще не открыта.

    На панели обозревателя отобразится проект, который теперь включает автоматически созданные файлы проекта. Например, в проекте есть папка, в которой отображается имя вашего рабочего процесса. В этой папке в файле workflow.js содержится базовое определение JSON рабочего процесса.

    Снимок экрана: панель обозревателя с папкой проекта, папкой рабочего процесса и файлом workflow.js.

  9. Если вы используете macOS или Linux, настройте доступ к учетной записи хранения, выполнив следующие действия, необходимые для локального запуска проекта:

    1. В корневой папке проекта откройте файл local.settings.json.

      Снимок экрана, на котором показана панель обозревателя и файл local.settings.js в вашем проекте.

    2. Замените значение свойства AzureWebJobsStorage на строку подключения учетной записи хранения, которую вы сохранили ранее, например:

      Перед следующей операцией.

      {
         "IsEncrypted": false,
         "Values": {
            "AzureWebJobsStorage": "UseDevelopmentStorage=true",
            "FUNCTIONS_WORKER_RUNTIME": "dotnet"
          }
      }
      

      После следующих операций.

      {
         "IsEncrypted": false,
         "Values": {
            "AzureWebJobsStorage": "DefaultEndpointsProtocol=https;AccountName=fabrikamstorageacct;AccountKey=<access-key>;EndpointSuffix=core.windows.net",
           "FUNCTIONS_WORKER_RUNTIME": "dotnet"
         }
      }
      

      Важно!

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

    3. Когда все будет готово, сохраните изменения.

Включение создание встроенного соединителя

Можно создать собственные встроенные соединители для любой необходимой службы, используя платформу расширяемости Azure Logic Apps с одним клиентом. Подобно встроенным соединителям, таким как служебная шина Azure и SQL Server, эти соединители обеспечивают более высокую пропускную способность, низкую задержку, локальное подключение и работают изначально в том же процессе, что и среда выполнения Azure Logic Apps с одним клиентом.

Возможность разработки в настоящее время доступна только в Visual Studio Code, но не включена по умолчанию. Чтобы создать эти соединители, нужно сначала переключить проект с использования набора расширений (Node.js) на использование пакетов NuGet (.NET).

Важно!

Это действие является односторонней операцией, которую нельзя отменить.

  1. На панели обозревателя в корневом каталоге проекта наведите указатель мыши на любую пустую область под остальными файлами и папками, откройте контекстное меню и выберите пункт Преобразовать в проект приложения логики на основе NuGet.

    Снимок экрана: панель обозревателя с контекстным меню проекта, открытым из пустой области в окне проекта.

  2. При появлении запроса подтвердите преобразование проекта.

  3. Чтобы продолжить, проверьте и выполните действия, описанные в статье Запуск Azure Logic Apps из любого места — расширяемость встроенного соединителя.

Открытие файла определения рабочего процесса в конструкторе

  1. Проверьте, какие версии установлены на вашем компьютере, выполнив следующую команду:

    ..\Users\{yourUserName}\dotnet --list-sdks

    Если у вас установлен пакет SDK для .NET Core 5.x, эта версия может не позволить вам открыть базовое определение рабочего процесса приложения логики в конструкторе. Вы можете не удалять эту версию, а создать в корневой папке своего проекта файл global.js, который ссылается на версию среды выполнения .NET Core 3.x, более позднюю, чем 3.1.201, например:

    {
       "sdk": {
          "version": "3.1.8",
          "rollForward": "disable"
       }
    }
    

    Важно!

    Файл global.js должен быть добавлен в корневую папку вашего проекта из Visual Studio Code. В противном случае конструктор не откроется.

  2. Разверните папку проекта для вашего рабочего процесса. Откройте контекстное меню для файла workflow.js и выберите Открыть в конструкторе.

    Снимок экрана: панель обозревателя и контекстное окно для файла workflow.json с выбранным параметром "Открыть в конструкторе".

  3. В списке Включить соединители в Azure выберите параметр Использовать соединители из Azure, который будет применен ко всем управляемым соединителям, доступным и развернутым в Azure, а не только к соединителям для служб Azure.

    Снимок экрана: панель обозревателя со списком "Включить соединители в Azure" и выбранным параметром "Использовать соединители из Azure".

    Примечание

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

  4. В списке Выберите подписку выберите подписку Azure, которая будет использоваться для вашего проекта приложения логики.

    Снимок экрана: панель обозревателя с полем "Выберите подписку" и выбранной подпиской.

  5. В списке групп ресурсов выберите параметр Создать новую группу ресурсов.

    Снимок экрана: панель обозревателя со списком групп ресурсов и выбранным параметром "Создать новую группу ресурсов".

  6. Укажите имя для группы ресурсов Azure и нажмите клавишу ВВОД. В этом примере используется Fabrikam-Workflows-RG.

    Снимок экрана: панель обозревателя и поле для ввода имени группы ресурсов.

  7. В списке расположений найдите и выберите регион Azure, который будет использоваться при создании вашей группы ресурсов и ресурсов. В этом примере используется Центрально-западная часть США.

    Снимок экрана: панель обозревателя со списком расположений и выбранным значением "Центрально-западная часть США".

    После выполнения этого шага Visual Studio Code откроет конструктор рабочих процессов.

    Примечание

    Когда Visual Studio Code запустит API-интерфейс времени разработки рабочего процесса, может появиться сообщение о том, что запуск может занять несколько секунд. Игнорируйте это сообщение или нажмите кнопку ОК.

    Если конструктор не откроется, проверьте раздел устранения неполадок: Конструктор не открывается.

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

    Снимок экрана: конструктор рабочих процессов.

  8. Затем добавьте триггер и действия в свой рабочий процесс.

Добавление триггера и действий

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

Рабочий процесс в этом примере использует этот триггер и следующие действия:

  • Встроенный триггер запроса При получении HTTP-запроса, который получает входящие вызовы или запросы и создает конечную точку, которую могут вызывать другие службы или приложения логики.

  • Действие Office 365 Outlook, Отправить письмо.

  • Встроенное действие ответа, которое используется для отправки ответа и возврата данных вызывающему объекту.

Добавление триггера "Запрос"

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

  2. В поле поиска Choose an operation (Выбор действия) введите when a http request и выберите встроенный триггер запроса с именем При получении HTTP-запроса.

    Снимок экрана: конструктор рабочих процессов и область Добавить триггер с выбранным триггером "При получении HTTP-запроса".

    Когда триггер отображается в конструкторе, открывается область сведений о триггере, в которой можно просмотреть свойства, параметры и другие действия триггера.

    Снимок экрана: конструктор рабочих процессов с выбранным триггером "При получении HTTP-запроса" и открытой областью сведений о триггере.

    Совет

    Если область сведений не отображается, проверьте, выбран ли триггер в конструкторе.

  3. Если необходимо удалить элемент из конструктора, выполните эти действия для удаления элементов из конструктора.

Добавление действия Office 365 Outlook

  1. В конструкторе под добавленным триггером выберите знак плюса ( + ) > Добавить действие.

    В конструкторе появится запрос Choose an operation (Выбор действия), после чего откроется область Добавить действие, где можно выбрать следующее действие.

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

    В этом примере выбирается и используется действие Office 365 Outlook Отправить электронное письмо (v2) .

    Снимок экрана: конструктор рабочих процессов и область Добавить действие с выбранным действием Office 365 Outlook "Отправить электронное письмо".

  3. В области сведений о действии выберите Вход, чтобы создать подключение к вашей учетной записи электронной почты.

    Снимок экрана: конструктор рабочих процессов и область Отправить электронное письмо (v2) с выбранным параметром "Вход".

  4. Когда Visual Studio Code запросит согласие на доступ к вашей учетной записи электронной почты, нажмите кнопку Открыть.

    Снимок экрана: запрос Visual Studio Code на разрешение доступа.

    Совет

    Чтобы предотвратить дальнейшие запросы, выберите Настроить доверенные домены, чтобы добавить страницу проверки подлинности как доверенный домен.

  5. Выполните дальнейшие инструкции, чтобы войти, разрешить доступ и разрешить возврат в Visual Studio Code.

    Примечание

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

  6. Когда расширение Azure Logic Apps (стандартная версия) запросит согласие на доступ к вашей учетной записи электронной почты, нажмите кнопку Открыть. Выполните дальнейшие указания, чтобы разрешить доступ.

    Снимок экрана, на котором показан запрос расширения для разрешения доступа.

    Совет

    Чтобы предотвратить дальнейшие запросы, установите флажок Больше не спрашивать для этого расширения.

    После того как Visual Studio Code создаст подключение, некоторые соединители могут показать сообщение The connection will be valid for {n} days only. Это ограничение действует, только пока вы разрабатываете приложение логики в Visual Studio Code. После развертывания это ограничение больше не применяется, так как приложение логики может проходить проверку подлинности во время выполнения с использованием управляемого удостоверения, назначенного системой, которое включается автоматически. Это управляемое удостоверение отличается от учетных данных проверки подлинности или строки подключения, используемой при создании соединения. Если отключить назначенное системой управляемое удостоверение, подключения во время выполнения работать не будут.

  7. Если в конструкторе не выбрано действие Отправить электронное письмо, выберите это действие.

  8. В области сведений о действиях на вкладке Параметры укажите необходимые для действия данные, например:

    Снимок экрана: конструктор рабочих процессов с подробными сведениями о действии Office 365 Outlook "Отправить электронное письмо".

    Свойство Обязательно Значение Описание
    Чтобы Да <ваш адрес электронной почты> Получатель электронной почты — для целей тестирования вы можете указать собственный адрес электронной почты. В этом примере используется вымышленный адрес электронной почты sophiaowen@fabrikam.com.
    Тема Да An email from your example workflow тему сообщения;
    Текст Да Hello from your example workflow! Содержимое текста электронного письма.

    Примечание

    Если вы хотите внести какие-то изменения в области сведений на вкладке Параметры, Статический результат или Выполнить после, обязательно выберите параметр Готово для фиксации этих изменений, прежде чем переключать вкладки или переходить в конструктор. В противном случае Visual Studio Code не сохранит изменения.

  9. В конструкторе нажмите Сохранить.

Важно!

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

Включение веб-перехватчиков, запускаемых локально

При использовании триггера или действия на основе веб-перехватчика, например HTTP-перехватчика, с приложением логики, запущенным в Azure, среда выполнения Logic Apps подписывается на конечную точку службы, создавая и регистрируя URL-адрес обратного вызова с этой конечной точкой. Затем триггер или действие ожидают, пока конечная точка службы не вызовет URL-адрес. Однако при работе в Visual Studio Code созданный URL-адрес обратного вызова начинается с http://localhost:7071/.... Этот URL-адрес предназначен для сервера localhost, который является частным, поэтому конечная точка службы не может вызывать этот URL-адрес.

Для локального запуска триггеров и действий на основе веб-перехватчика в Visual Studio Code необходимо настроить общедоступный URL-адрес, который обеспечивает доступ к серверу localhost и безопасно перенаправляет вызовы из конечной точки службы на URL-адрес обратного вызова перехватчика. Можно использовать службу переадресации и такой инструмент, как ngrok, который открывает HTTP-туннель к порту localhost, или собственный аналогичный инструмент.

Настройка переадресации вызовов с помощью ngrok

  1. Зарегистрируйте учетную запись ngrok, если у вас ее еще нет. Если есть, то войдите в свою учетную запись.

  2. Получите личный маркер проверки подлинности, необходимый клиенту ngrok для подключения и проверки подлинность доступа к вашей учетной записи.

    1. Чтобы найти страницу маркера проверки подлинности, в меню панели мониторинга учетной записи разверните узел Проверка подлинности и выберите Ваш маркер проверки подлинности.

    2. В поле Маркер проверки подлинности скопируйте маркер в надежное расположение.

  3. На странице загрузки ngrok или на панели мониторинга учетной записи скачайте нужную версию ngrok и распакуйте ZIP-файл. Дополнительные сведения см. в разделе Шаг 1. Распаковка для установки.

  4. На компьютере откройте средство командной строки. Перейдите в расположение, где находится файл ngrok.exe.

  5. Подключите клиент ngrok к учетной записи ngrok, выполнив следующую команду. Дополнительные сведения см. разделе Шаг 2. Подключение учетной записи.

    ngrok authtoken <your_auth_token>

  6. Откройте HTTP-туннель для порта localhost 7071, выполнив следующую команду. Дополнительные сведения см. в разделе Шаг 3. Запуск.

    ngrok http 7071

  7. В открывшихся данных найдите следующую строку:

    http://<domain>.ngrok.io -> http://localhost:7071

  8. Скопируйте и сохраните URL-адрес, имеющий следующий формат: http://<domain>.ngrok.io

Настройка URL-адреса переадресации в параметрах приложения

  1. В Visual Studio Code в конструкторе добавьте триггер HTTP + веб-перехватчик или действие.

  2. Когда система предложит указать расположение конечной точки узла, введите созданный ранее URL-адрес переадресации (перенаправления).

    Примечание

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

    Чтобы снова отобразить этот запрос, в корневом каталоге проекта откройте контекстное меню файла local.settings.json и выберите пункт Настроить конечную точку перенаправления веб-перехватчика. После этого появится запрос, в котором можно будет указать URL-адрес переадресации.

    Visual Studio Code добавит URL-адрес переадресации в файл local.settings.json в корневом каталоге проекта. После этого в объекте Values появится свойство с именем Workflows.WebhookRedirectHostUri, значением которого станет URL-адрес переадресации, например:

    {
       "IsEncrypted": false,
       "Values": {
          "AzureWebJobsStorage": "UseDevelopmentStorage=true",
          "FUNCTIONS_WORKER_RUNTIME": "node",
          "FUNCTIONS_V2_COMPATIBILITY_MODE": "true",
          <...>
          "Workflows.WebhookRedirectHostUri": "http://xxxXXXXxxxXXX.ngrok.io",
          <...>
       }
    }
    

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

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

Примечание

После запуска рабочего процесса в окне терминала могут отображаться ошибки, как в следующем примере:

message='Http request failed with unhandled exception of type 'InvalidOperationException' and message: 'System.InvalidOperationException: Synchronous operations are disallowed. Call ReadAsync or set AllowSynchronousIO to true instead.

В этом случае откройте файл local.settings.json в корневом каталоге проекта и убедитесь, что для свойства задано значение true:

"FUNCTIONS_V2_COMPATIBILITY_MODE": "true"

Управление точками останова для отладки

Перед запуском и тестированием рабочего процесса приложения логики с помощью сеанса отладки можно установить для каждого рабочего процесса точки останова в файле workflow.json. Никакая другая настройка не требуется.

Точки останова пока поддерживаются только для действий, но не для триггеров. Каждое определение действия имеет следующие расположения точек останова:

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

  • Установите конечную точку останова в строке с закрывающей фигурной скобкой действия ( } ). При попадании в эту точку останова во время сеанса отладки можно проверить результаты действия перед его завершением.

Для добавления точки останова выполните следующие действия.

  1. Откройте файл workflow.json для рабочего процесса, который требуется отладить.

  2. В строке, где нужно задать точку останова, выберите нужно место в левом столбце. Чтобы удалить точку останова, выберите эту точку останова.

    Когда вы запустите сеанс отладки, в левой части окна кода появится представление "Выполнение", а вверху — панель инструментов "Отладка".

    Примечание

    Если представление "Выполнение" не отображается автоматически, нажмите клавиши CTRL+SHIFT+D.

  3. Чтобы просмотреть доступные сведения при попадании в точку останова, в представлении "Выполнение" проверьте панель Переменные.

  4. Чтобы продолжить выполнение рабочего процесса, на панели инструментов "Отладка" нажмите кнопку Продолжить (кнопка воспроизведения).

Добавлять и удалять точки останова можно в любое время во время выполнения рабочего процесса. Однако если вы обновите файл workflow.json после начала выполнения, точки останова автоматически не обновятся. Чтобы обновить точки останова, перезапустите приложение логики.

Общие сведения см. в разделе Точки останова — Visual Studio Code.

Локальное выполнение, тестирование и отладка

Чтобы протестировать приложение логики, запустите сеанс отладки и найдите URL-адрес конечной точки, созданной триггером запроса, выполнив описанные ниже действия. Этот URL-адрес потребуется вам для того, чтобы впоследствии можно было отправить запрос к этой конечной точке.

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

  2. На панели действий Visual Studio Code откройте меню Выполнение и выберите Начать отладку (F5).

    Откроется окно Терминал, в котором можно просмотреть данные сеанса отладки.

    Примечание

    Если появится сообщение "После выполнения предварительной задачи generateDebugSymbols возникает ошибка" , см. пункт Не удается запустить сеанс отладки в разделе об устранении неполадок.

  3. Теперь найдите URL-адрес обратного вызова для конечной точки в триггере запроса.

    1. Снова откройте панель обозревателя, чтобы где можно просмотреть проект.

    2. В контекстном меню файла workflow.json выберите пункт Обзор.

      Снимок экрана: панель обозревателя и контекстное окно для файла workflow.json с выбранным параметром "Обзор".

    3. Найдите значение URL-адреса обратного вызова, аналогичное URL-адресу в этом примере триггера запроса:

      http://localhost:7071/api/<workflow-name>/triggers/manual/invoke?api-version=2020-05-01-preview&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=<shared-access-signature>

      Снимок экрана: страница обзора рабочего процесса с URL-адресом обратного вызова.

  4. Чтобы проверить URL-адрес обратного вызова путем активации рабочего процесса приложения логики, откройте Postman или предпочитаемое вами средство для создания и отправки запросов.

    В этом примере будет использоваться Postman. Дополнительные сведения см. в руководстве по началу работы с Postman.

    1. На панели инструментов Postman нажмите кнопку Создать.

      Снимок экрана, на котором показана панель инструментов Postman с выделенной кнопкой "Создать".

    2. В области Создание в разделе Стандартные блоки выберите Запрос.

    3. В окне Сохранение запроса в разделе Имя запроса введите имя запроса, например Test workflow trigger.

    4. В разделе Select a collection or folder to save to (Выберите коллекцию или папку для сохранения) выберите Создать коллекцию.

    5. В разделе Все коллекции укажите имя коллекции, которую нужно создать для упорядочения запросов, нажмите клавишу ВВОД и выберите Сохранить в <имя-коллекции> . В этом примере используется имя коллекции Logic Apps requests.

      Откроется панель запросов Postman, где можно отправить запрос по URL-адресу обратного вызова для триггера запроса.

      Снимок экрана, на котором показан инструмент Postman с открытой областью запросов.

    6. Верните в Visual Studio Code. На странице с обзором рабочего процесса скопируйте значение свойства URL-адрес обратного вызова.

    7. Вернитесь в Postman. На панели запросов рядом со списком методов, где сейчас по умолчанию выбран метод запроса GET, вставьте URL-адрес обратного вызова, скопированный ранее, в поле адреса, и нажмите кнопку Отправить.

      Снимок экрана: Postman и URL-адрес обратного вызова в поле адреса с выбранной кнопкой "Отправить".

      В этом примере рабочий процесс приложения логики отправляет электронное письмо следующего вида:

      Снимок экрана, на котором показано электронное сообщение в Outlook, описанное в примере.

  5. В Visual Studio Code вернитесь на страницу обзора рабочего процесса.

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

    Совет

    Если состояние выполнения не отображается, обновите страницу обзора, выбрав Обновить. Для триггера, пропущенного из-за невыполненных условий или ненайденных данных, выполнение не произойдет.

    Снимок экрана: страница обзора рабочего процесса с состоянием выполнения и журналом.

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

    Подсказка. Если вы настроили ведение журнала диагностики, то вы можете получить из него данные о любых происходящих событиях регулирования.

    Успешно Успешное выполнение. Если какое-либо действие завершилось сбоем, последующее действие в рабочем процессе обработало этот сбой.
    Истекло время ожидания Время выполнения истекло, так как текущая длительность превысила ограничение на продолжительность выполнения, которым управляет параметр Run history retention in days (Срок хранения журнала выполнения в днях). Продолжительность выполнения вычисляется с учетом времени начала и максимальной продолжительности выполнения, отсчитываемой от этого времени начала.

    Примечание. Если продолжительность выполнения также превышает текущий срок хранения журнала выполнения, которым управляет параметр Run history retention in days (Срок хранения журнала выполнения в днях), выполнение удаляется из журнала выполнения заданием ежедневной очистки. Независимо от того, завершилось ли время ожидания выполнения, период хранения всегда вычисляется с учетом времени начала выполнения и текущего срока хранения. Таким образом, при уменьшении срока хранения активного выполнения время ожидания истекает. При этом выполнение либо остается, либо удаляется из журнала выполнения в зависимости от того, превышает ли его продолжительность срок хранения.

    Ожидание Выполнение не началось или приостановлено, например, из-за предыдущего экземпляра рабочего процесса, который еще выполняется.
  6. Чтобы просмотреть состояния каждого шага в определенном выполнении, а также входные и выходные данные этого шага, нажмите кнопку с многоточием ( ... ) для соответствующего выполнения и выберите команду Показать выполнение.

    Снимок экрана: строка журнала выполнений рабочего процесса с кнопкой с многоточием и выбранным параметром "Показать выполнение".

    Visual Studio Code откроет представление мониторинга и покажет состояние каждого шага в этом выполнении.

    Снимок экрана: каждый шаг в выполнении рабочего процесса с указанием состояния.

    Примечание

    Если при выполнении происходит сбой и в представлении мониторинга рядом с определенным шагом появляется ошибка 400 Bad Request, это может быть вызвано слишком длинным именем триггера или действия, превышающим ограничение базового универсального кода ресурса (URI) на количество символов, установленное по умолчанию. Дополнительные сведения см. в разделе 400 Недопустимый запрос.

    Ниже перечислены возможные состояния каждого этапа в рабочем процессе.

    Состояние действия Описание
    Прерывание Действие остановлено или не завершено из-за внешних проблем, например, из-за сбоя системы или истекшего срока действия подписки Azure.
    Отменено Действие было запущено, но поступил запрос на отмену.
    Сбой Выполнить действие не удалось.
    Выполнение Действие выполняется.
    Пропущено Действие было пропущено, так как предыдущее действие завершилось сбоем. Действие имеет условие runAfter, которое требует, чтобы перед его выполнением предыдущее действие было успешно завершено.
    Успешно Действие успешно выполнено.
    Выполнено с повторными попытками Действие выполнено, но только после одной или нескольких повторных попыток. Чтобы просмотреть журнал повторных попыток, в представлении сведений о журнале выполнения выберите соответствующее действие, чтобы просмотреть входные и выходные данные.
    Истекло время ожидания Действие остановлено из-за превышения времени ожидания, указанного в параметрах этого действия.
    Ожидание Применяется к действию веб-перехватчика, ожидающему входящего запроса от вызывающего объекта.
  7. Чтобы просмотреть входные и выходные данные по каждому шагу, разверните шаг, который необходимо проверить.

    Снимок экрана: состояние каждого шага в рабочем процессе плюс входные и выходные данные в расширенном действии "Отправить электронное письмо".

  8. Для более подробного изучения необработанных входных и выходных данных этого этапа выберите параметр Show raw inputs (Показать необработанные входные данные) или Show raw outputs (Показать необработанные выходные данные).

  9. Чтобы остановить сеанс отладки, в меню Выполнение выберите команду Остановить отладку (SHIFT+F5).

Возврат ответа

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

  1. В конструкторе рабочих процессов в разделе действий Отправить электронное письмо выберите знак плюса ( + ) > Добавить действие.

    В конструкторе появится запрос Choose an operation (Выбор действия), после чего откроется область Добавить действие, где можно выбрать следующее действие.

  2. В области Добавить действие в поле поиска Выберите действие должен быть выбран параметр Встроенные. В поле поиска введите response и выберите действие Ответ.

    Снимок экрана: конструктор рабочих процессов с выбранным действием "Ответ".

    Когда в конструкторе появится действие Ответ, автоматически откроется область сведений о действии.

    Снимок экрана: конструктор рабочих процессов с открытой областью сведений о действии "Ответ" и свойством "Текст", в качестве значения которого выбрано действие "Отправить электронное письмо".

  3. На вкладке Параметры укажите необходимые сведения для функции, которую необходимо вызвать.

    В этом примере возвращается значение свойства Текст, которое выводится в результате действия Отправить электронное письмо.

    1. Щелкните поле свойства Текст, чтобы появился список динамического содержимого. Отобразятся доступные выходные значения из предыдущего триггера и действий в рабочем процессе.

      Снимок экрана: область сведений о действии "Ответ" с курсором, установленным в свойстве "Текст", для отображения списка динамического содержимого.

    2. В списке динамическое содержимое в разделе Отправить электронное письмо выберите Текст.

      Снимок экрана: открытый список динамического содержимого. В списке под заголовком "Отправить электронное письмо" будет выбрано выходное значение "Текст".

      После этого для свойства Текст в действии "Ответ" будет задано выходное значение Текст действия Отправить электронное письмо.

      Снимок экрана: состояние каждого шага в рабочем процессе плюс входные и выходные данные в расширенном действии "Ответ".

  4. В конструкторе нажмите Сохранить.

Повторное тестирование приложения логики

После внесения обновлений в приложение логики можно выполнить еще один тест, повторно запустив отладчик в Visual Studio и отправив другой запрос для активации обновленного приложения логики таким же образом, как было описано выше в разделе Локальное выполнение, тестирование и отладка.

  1. На панели действий Visual Studio Code откройте меню Выполнение и выберите Начать отладку (F5).

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

  3. Если вы создали рабочий процесс с отслеживанием состояния, на странице обзора рабочего процесса проверьте состояние последнего выполнения. Чтобы просмотреть состояние, а также входные и выходные данные для каждого шага в этом выполнении, нажмите кнопку с многоточием ( ... ) для этого выполнения и выберите команду Показать выполнение.

    Например, ниже показаны состояния каждого шага выполнения после обновления примера рабочего процесса с помощью действия "Ответ".

    Снимок экрана: состояние каждого шага в обновленном рабочем процессе плюс входные и выходные данные в расширенном действии "Ответ".

  4. Чтобы остановить сеанс отладки, в меню Выполнение выберите команду Остановить отладку (SHIFT+F5).

Поиск доменных имен для доступа к брандмауэру

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

Чтобы узнать полные доменные имена (FQDN) для этих подключений, выполните следующие действия:

  1. В проекте приложения логики откройте файл connections.json, который создается после добавления в рабочий процесс первого триггера или действия на основе подключения, и найдите объект managedApiConnections.

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

    Файл connections.json в этом примере содержит два подключения — AS2 и Office 365 со следующими значениямиconnectionRuntimeUrl:

    • AS2: "connectionRuntimeUrl": https://9d51d1ffc9f77572.00.common.logic-{Azure-region}.azure-apihub.net/apim/as2/11d3fec26c87435a80737460c85f42ba

    • Office 365: "connectionRuntimeUrl": https://9d51d1ffc9f77572.00.common.logic-{Azure-region}.azure-apihub.net/apim/office365/668073340efe481192096ac27e7d467f

    {
       "managedApiConnections": {
          "as2": {
             "api": {
                "id": "/subscriptions/{Azure-subscription-ID}/providers/Microsoft.Web/locations/{Azure-region}/managedApis/as2"
             },
             "connection": {
                "id": "/subscriptions/{Azure-subscription-ID}/resourceGroups/{Azure-resource-group}/providers/Microsoft.Web/connections/{connection-resource-name}"
             },
             "connectionRuntimeUrl": https://9d51d1ffc9f77572.00.common.logic-{Azure-region}.azure-apihub.net/apim/as2/11d3fec26c87435a80737460c85f42ba,
             "authentication": {
                "type":"ManagedServiceIdentity"
             }
          },
          "office365": {
             "api": {
                "id": "/subscriptions/{Azure-subscription-ID}/providers/Microsoft.Web/locations/{Azure-region}/managedApis/office365"
             },
             "connection": {
                "id": "/subscriptions/{Azure-subscription-ID}/resourceGroups/{Azure-resource-group}/providers/Microsoft.Web/connections/{connection-resource-name}"
             },
             "connectionRuntimeUrl": https://9d51d1ffc9f77572.00.common.logic-{Azure-region}.azure-apihub.net/apim/office365/668073340efe481192096ac27e7d467f,
             "authentication": {
                "type":"ManagedServiceIdentity"
             }
          }
       }
    }
    

Развернуть в Azure

В редакторе Visual Studio Code можно напрямую опубликовать проект в Azure для развертывания приложения логики с использованием нового типа ресурса Приложение логики (стандартная версия) . Вы можете опубликовать свое приложение логики как новый ресурс — в этом случае автоматически будут созданы все необходимые ресурсы, такие как учетная запись хранения Azure, как и в случае с приложением-функцией. Также можно опубликовать свое приложение логики в ранее развернутом ресурсе Приложение логики (стандартная версия) , который перезаписывает это приложение логики.

Для развертывания типа ресурса Приложение логики (стандартная версия) требуется план размещения и ценовая категория, которые можно выбрать во время развертывания. Дополнительные сведения см. в статье Планы размещения и ценовые категории.

Публикация в новом ресурсе "Приложение логики (стандартная версия)"

  1. На панели действий Visual Studio Code щелкните значок Azure.

  2. На панели инструментов в области Azure: Logic Apps (стандартная версия) выберите Развернуть в приложение логики.

    Снимок экрана, на котором показана панель "Azure: Logic Apps (стандартная версия)" и панель инструментов с выбранным параметром "Развернуть в приложение логики".

  3. При появлении запроса выберите подписку Azure, которая будет использоваться для развертывания приложения логики.

  4. В открывшемся списке Visual Studio Code выберите следующие параметры:

    • Создать новое приложение логики (стандартная версия) в Azure (быстрый вариант)
    • Создать новое приложение логики (стандартная версия) в Azure (расширенная версия)
    • Развернутый ранее ресурс Приложение логики (стандартная версия) , если он существует

    В этом примере выбран параметр Создать новое приложение логики (стандартная версия) в Azure (расширенная версия) .

    Снимок экрана, на котором показана панель "Azure: Logic Apps (стандартная версия)" со списком, в котором выбран параметр "Создать новое приложение логики (стандартная версия) в Azure".

  5. Чтобы создать новый ресурс Приложение логики (стандартная версия) , выполните следующие действия.

    1. Укажите для нового приложения логики глобально уникальное имя, которое будет использоваться для ресурса Приложение логики (стандартная версия) . В этом примере используется Fabrikam-Workflows-App.

      Снимок экрана, на котором показана панель "Azure: Logic Apps (стандартная версия)" и запрос на ввод имени для создаваемого приложения логики.

    2. Выберите план размещения для нового приложения логики. Можно придумать имя для плана или выбрать существующий план. В этом примере выбран вариант Создать новый план службы приложений.

      Снимок экрана, на котором показана панель "Azure: Logic Apps (стандартная версия)" и запрос "Создать новый план службы приложений" и возможность выбора существующего плана службы приложений.

    3. Укажите имя своего плана размещения, а затем выберите ценовую категорию для выбранного плана.

      Дополнительные сведения см. в статье Планы размещения и ценовые категории.

    4. Для оптимальной производительности найдите и выберите ту же группу ресурсов, что и в проекте для развертывания.

      Примечание

      Вы можете создать или использовать другую группу ресурсов, однако это может негативно повлиять на производительность. Если вы создаете или выбираете другую группу ресурсов и отменяете ее после появления запроса подтверждения, развертывание также отменяется.

    5. Для рабочих процессов с отслеживанием состояния выберите параметр Создать новую учетную запись хранения или существующую учетную запись хранения.

      Снимок экрана, на котором показана панель "Azure: Logic Apps (стандартная версия)" и запрос на создание или выбор учетной записи хранения.

    6. Если параметры создания и развертывания вашего приложения логики поддерживают использование Application Insights, вы можете по желанию включить для этого приложения логики ведение журнала диагностики и трассировку. Это можно сделать при развертывании приложения логики из Visual Studio Code или после развертывания. Для этого нужен экземпляр Application Insights, но его можно создать заранее, при развертывании приложения логики или после развертывания.

      Чтобы включить ведение журнала и трассировку, выполните следующие действия.

      1. Выберите параметр Создать новый ресурс Application Insights или выберите уже существующий ресурс.

      2. Вернитесь к ресурсу Application Insights на портале Azure.

      3. В меню ресурса выберите Обзор. Найдите и скопируйте значение ключа инструментирования.

      4. В Visual Studio Code в корневой папке проекта откройте файл local.settings.json.

      5. В объекте Values добавьте свойство APPINSIGHTS_INSTRUMENTATIONKEY и задайте значение для ключа инструментирования, например:

        {
           "IsEncrypted": false,
           "Values": {
              "AzureWebJobsStorage": "UseDevelopmentStorage=true",
              "FUNCTIONS_WORKER_RUNTIME": "dotnet",
              "APPINSIGHTS_INSTRUMENTATIONKEY": <instrumentation-key>
           }
        }
        

        Совет

        Вы можете проверить, правильно ли указаны имена триггера и действия в экземпляре Application Insights.

        1. Вернитесь к ресурсу Application Insights на портале Azure.

        2. В меню ресурсов в разделе Исследовать выберите параметр Схема приложения.

        3. Проверьте имена операций, которые отображаются на карте.

        Некоторые входящие запросы от встроенных триггеров могут отображаться в схеме приложения как дубликаты. Вместо использования формата WorkflowName.ActionName эти дубликаты используют имя рабочего процесса в качестве имени операции и берутся из узла Функций Azure.

      6. При желании вы можете можно настроить уровень серьезности для данных трассировки, собираемых приложением логики и отправляемых в экземпляр Application Insights.

        Каждый раз, когда происходит событие, связанное с рабочим процессом, например при запуске рабочего процесса или выполнении действия, среда выполнения создает различные трассировки. Они охватывают время существования рабочего процесса и включают, помимо прочего, следующие типы событий:

        • Действия службы, такие как запуск, остановка и ошибки.
        • Задания и активность диспетчера.
        • Активность рабочего процесса, такие как триггер, действие и выполнение.
        • Активность запросов хранилища — выполнен или не выполнен.
        • Активность HTTP-запросов — входящие, исходящие, выполненные и не выполненные.
        • Трассировки разработки, например, сообщения отладки.

        Каждому типу события присваивается уровень серьезности. Например, уровень Trace включает самые подробные сообщения, а уровень Information — общую активность в рабочем процессе, например, когда приложение логики, рабочий процесс, триггер и действия запускаются и останавливаются. В следующей таблице представлены уровни серьезности и типы их трассировки.

        Степень серьезности Тип трассировки
        Критически важно Журналы, описывающие неустранимый сбой в приложении логики.
        Отладка Журналы, которые можно использовать для изучения во время разработки, например входящие и исходящие HTTP-вызовы.
        Ошибка Журналы, указывающие на сбой выполнения рабочего процесса, но не на общий сбой в приложении логики.
        Сведения Журналы, которые отписывают общие действия в приложении логики или рабочем процессе, например:

        — Запуск и остановка триггера, действия или выполнения.
        — Запуск и остановка приложения логики.

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

        Чтобы задать уровень серьезности, на корневом каталоге проекта откройте файл host.json файле и найдите объект logging. Он управляет фильтрацией журналов для всех рабочих процессов в приложении логики и соответствует разметке ASP.NET Core для фильтрации типов журналов.

        {
           "version": "2.0",
           "logging": {
              "applicationInsights": {
                 "samplingExcludedTypes": "Request",
                 "samplingSettings": {
                    "isEnabled": true
                 }
              }
           }
        }
        

        Если объект logging не содержит объект logLevel, включающий свойство Host.Triggers.Workflow, добавьте эти элементы. В этом свойстве укажите уровень серьезности для соответствующего типа трассировки, например:

        {
           "version": "2.0",
           "logging": {
              "applicationInsights": {
                 "samplingExcludedTypes": "Request",
                 "samplingSettings": {
                    "isEnabled": true
                 }
              },
              "logLevel": {
                 "Host.Triggers.Workflow": "Information"
              }
           }
        }
        

    После завершения действий по развертыванию Visual Studio Code приступит к созданию и развертыванию ресурсов, необходимых для публикации приложения логики.

  6. Для просмотра и отслеживания процесса развертывания в меню Вид выберите пункт Выходные данные. На панели инструментов окна с выходными данными выберите Приложения логики Azure.

    Снимок экрана: окно выходных данных с выбранным на панели инструментов параметром "Приложения логики Azure", ход выполнения развертывания и состояния.

    Когда Visual Studio Code завершит развертывание вашего приложения логики в Azure, появится следующее сообщение:

    Снимок экрана: сообщение о том, что развертывание в Azure успешно завершено.

    Готово! Теперь ваше приложение логики активно в Azure и по умолчанию включено.

Далее вы можете узнать, как выполнять следующие задачи:

Добавление в проект пустого рабочего процесса

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

  1. На панели действий Visual Studio Code щелкните значок Azure.

  2. На панели Azure рядом с Azure: Logic Apps (стандартная версия) выберите Создать рабочий процесс (значок для Azure Logic Apps).

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

  4. Укажите имя для рабочего процесса.

После этого в проекте появится папка нового рабочего процесса, а также файл workflow.json для определения рабочего процесса.

Управление развернутыми приложениями логики в Visual Studio Code

В редакторе Visual Studio Code можно просмотреть все развернутые приложения логики в подписке Azure, как исходные приложения логики, так и ресурсы типа Приложение логики (стандартная версия) , а также выбрать задачи, которые помогут управлять этими приложениями логики. Однако для доступа к обоим этим типам ресурсов требуются расширения Azure Logic Apps и Azure Logic Apps (стандартная версия) для редактора Visual Studio Code.

  1. На панели инструментов слева щелкните значок Azure. На панели Azure: Logic Apps (стандартная версия) разверните подписку, в которой отображаются все развернутые приложения логики для этой подписки.

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

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

    Примечание

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

    Снимок экрана, на котором показан редактор Visual Studio Code с открытой панелью расширения "Azure Logic Apps (стандартная версия)" и развернутый рабочий процесс.

  3. Чтобы просмотреть все рабочие процессы в приложении логики, разверните приложение логики, а затем узел Рабочие процессы.

  4. Чтобы просмотреть конкретный рабочий процесс, откройте контекстное меню этого рабочего процесса и выберите команду Открыть в конструкторе, чтобы открыть рабочий процесс в режиме только для чтения.

    Чтобы изменить рабочий процесс, можно использовать следующие варианты:

    • В Visual Studio Code откройте файл workflow.json проекта в конструкторе рабочих процессов, внесите изменения и заново разверните приложение логики в Azure.

    • На портале Azure найдите и откройте нужное приложение логики. Найдите, измените и сохраните рабочий процесс.

  5. Чтобы открыть развернутое приложение логики на портале Azure, откройте контекстное меню приложения логики и выберите команду Открыть на портале.

    Портал Azure откроется в браузере, автоматически выполнится вход на портал, если вы вошли в Visual Studio Code, и отобразится приложение логики.

    Снимок экрана: страница портала Azure с вашим приложением логики в Visual Studio Code.

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

    Снимок экрана: портал Azure и панель поиска с результатами поиска и выбранным развернутым приложение логики.

Рекомендации по остановке приложений логики

Остановка приложения логики влияет на экземпляры рабочих процессов следующим образом.

  • Служба Logic Apps немедленно отменяет все выполняющиеся и ожидающие выполнения рабочие процессы.

  • Служба Logic Apps не будет создавать или выполнять новые экземпляры рабочего процесса.

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

    Чтобы триггер не срабатывал на необработанные элементы с момента последнего запуска, удалите состояние триггера перед повторным запуском приложения логики.

    1. На панели инструментов слева в редакторе Visual Studio Code выберите значок Azure.
    2. На панели Azure: Logic Apps (стандартная версия) разверните подписку, в которой отображаются все развернутые приложения логики для этой подписки.
    3. Разверните приложение логики, а затем разверните узел Рабочие процессы.
    4. Откройте рабочий процесс и измените любую часть триггера этого рабочего процесса.
    5. Сохраните изменения. На этом этапе выполняется сброс текущего состояния триггера.
    6. Повторите действия для каждого рабочего процесса.
    7. По завершении сохраните приложение логики.

Рекомендации по удалению приложений логики

Удаление приложения логики влияет на экземпляры рабочих процессов следующим образом:

  • Служба Logic Apps немедленно отменяет выполняемые и ожидающие запуска рабочие процессы, но не запускает задачи очистки в хранилище, используемом приложением.

  • Служба Logic Apps не будет создавать или выполнять новые экземпляры рабочего процесса.

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

Управление развернутыми приложениями логики на портале

После развертывания приложения логики на портале Azure из редактора Visual Studio Code можно просмотреть все развернутые приложения логики, которые есть в подписке Azure, независимо от того, принадлежат ли они изначально к типу ресурса Приложения логики или Приложение логики (стандартная версия) . Сейчас каждый тип ресурса организован и управляется в Azure как отдельные категории. Чтобы найти приложения логики с типом ресурса Приложение логики (стандартная версия) , выполните следующие действия.

  1. В поле поиска портала Azure введите logic apps. Когда появится список результатов, в разделе Службы выберите Logic Apps.

    Снимок экрана, на котором показано поле поиска на портале Azure с текстом для поиска "logic apps".

  2. На панели Приложение логики (стандартная версия) найдите и выберите приложение логики, развернутое из Visual Studio Code.

    Снимок экрана, на котором показан портал Azure и ресурсы "Приложение логики (стандартная версия)", развернутые в Azure.

    Портал Azure откроет отдельную страницу ресурсов для выбранного приложения логики.

    Снимок экрана: страница ресурсов рабочего процесса приложения логики на портале Azure.

  3. Чтобы просмотреть рабочие процессы в этом приложении логики, в меню приложения логики выберите Рабочие процессы.

    В области Рабочие процессы отобразятся все рабочие процессы в текущем приложении логики. В этом примере показан рабочий процесс, созданный в Visual Studio Code.

    Снимок экрана, на котором показана страница ресурса "Приложение логики (стандартная версия)" с открытой панелью "Рабочие процессы" и развернутым рабочим процессом.

  4. Чтобы просмотреть рабочий процесс, выберите этот рабочий процесс в области Рабочие процессы.

    Откроется область рабочих процессов с дополнительными сведениями и задачами, которые можно выполнить в этом рабочем процессе.

    Например, чтобы просмотреть шаги в рабочем процессе, выберите Конструктор.

    Снимок экрана: обзор выбранного рабочего процесса с выбранным в меню рабочего процесса параметром "Конструктор".

    Откроется конструктор рабочих процессов, в котором будет показан рабочий процесс, созданный в Visual Studio Code. Теперь вы можете внести изменения в этот рабочий процесс на портале Azure.

    Снимок экрана: конструктор рабочих процессов и рабочий процесс, развернутый из Visual Studio Code.

Добавление другого рабочего процесса на портале

С помощью портала Azure можно добавлять пустые рабочие процессы в ресурс Логическое приложение (стандартная версия) , развернутый из Visual Studio Code, и создавать эти рабочие процессы на портале Azure.

  1. На портале Azure найдите и выберите развернутый ресурс Приложение логики (стандартная версия) .

  2. В меню приложения логики выберите Рабочие процессы. В области Рабочие процессы выберите Добавить.

    Снимок экрана: область "Рабочие процессы" выбранного приложения логики и панель инструментов с выбранной командой "Добавить".

  3. В области Новый рабочий процесс укажите имя для рабочего процесса. Выберите вариант С отслеживанием состояния или Без отслеживания состояния > Создать.

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

    Снимок экрана: выбранный рабочий процесс с параметрами управления и проверки.

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

    Снимок экрана: конструктор рабочих процессов и пустой рабочий процесс.

Включение журнала выполнения для рабочих процессов без отслеживания состояния

Чтобы упростить отладку рабочего процесса без отслеживания состояния, можно включить для него журнал выполнения, а по завершении работы отключить его. Выполните следующие действия в редакторе Visual Studio Code или, если используете портал Azure, см. статью Создание рабочих процессов с одним клиентом на портале Azure.

  1. В проекте Visual Studio Code разверните папку workflow-designtime и откройте файл local.settings.json.

  2. Добавьте свойство Workflows.{yourWorkflowName}.operationOptions и задайте для него значение WithStatelessRunHistory, например:

    Windows

    {
       "IsEncrypted": false,
       "Values": {
          "AzureWebJobsStorage": "UseDevelopmentStorage=true",
          "FUNCTIONS_WORKER_RUNTIME": "dotnet",
          "Workflows.{yourWorkflowName}.OperationOptions": "WithStatelessRunHistory"
       }
    }
    

    macOS или Linux

    {
       "IsEncrypted": false,
       "Values": {
          "AzureWebJobsStorage": "DefaultEndpointsProtocol=https;AccountName=fabrikamstorageacct; \
              AccountKey=<access-key>;EndpointSuffix=core.windows.net",
          "FUNCTIONS_WORKER_RUNTIME": "dotnet",
          "Workflows.{yourWorkflowName}.OperationOptions": "WithStatelessRunHistory"
       }
    }
    
  3. Чтобы отключить журнал выполнения по завершении, присвойте свойству Workflows.{yourWorkflowName}.OperationOptions значение None или удалите это свойство вместе со значением.

Включение представления мониторинга на портале Azure

После развертывания ресурса Приложение логики (стандартная версия) из Visual Studio Code в Azure можно просмотреть любой доступный журнал выполнения и сведения о рабочем процессе в этом ресурсе на портале Azure и через интерфейс монитора для этого рабочего процесса. Однако сначала необходимо включить возможность использовать представление Монитор для этого ресурса приложения логики.

  1. На портале Azure найдите и выберите развернутый ресурс Приложение логики (стандартная версия) .

  2. В меню этого ресурса в разделе API выберите CORS.

  3. В области CORS в разделе Разрешенные источники добавьте подстановочный знак (*).

  4. Затем на панели инструментов CORS нажмите кнопку Сохранить.

    Снимок экрана, на котором показан портал Azure с развернутым ресурсом "Приложение логики (стандартная версия)" В меню ресурсов будет выбран параметр "CORS", а для параметра "Разрешенные источники" будет создана новая запись с подстановочным знаком "*".

Включение или открытие Application Insights после развертывания

Во время выполнения рабочего процесса ваше приложение логики выдает вместе с другими событиями данные телеметрии. Данные телеметрии можно использовать для получения более четкого представления о том, насколько хорошо работает рабочий процесс, а также о различных способах работы среды выполнения Logic Apps. Вы можете отслеживать рабочий процесс в службе Application Insights, которая предоставляет данные телеметрии практически в режиме реального времени (динамические метрики). Эта возможность упрощает исследование сбоев и проблем с производительностью, так как можно использовать эти данные для диагностики проблем, настройки оповещений и построения диаграмм.

Если параметры создания и развертывания вашего приложения логики поддерживают использование Application Insights, вы можете по желанию включить для этого приложения логики ведение журнала диагностики и трассировку. Это можно сделать при развертывании приложения логики из Visual Studio Code или после развертывания. Для этого нужен экземпляр Application Insights, но его можно создать заранее, при развертывании приложения логики или после развертывания.

Чтобы включить Application Insights в развернутом приложении логики или просмотреть данные Application Insights, если он уже включен, выполните следующие действия:

  1. Найдите свое развернутое приложение логики на портале Azure.

  2. В меню приложения логики в разделе Параметры выберите Application Insights.

  3. Если служба Application Insights не включена, в области Application Insights выберите Включить Application Insights. Когда область обновится, щелкните внизу Применить.

    Если служба Application Insights включена, в области Application Insights выберите Просмотреть данные Application Insights.

Когда откроется область Application Insights, вы сможете просмотреть различные метрики для своего приложения логики. Дополнительные сведения см. в следующих разделах:

Удаление элементов из конструктора

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

  • Выберите элемент, откройте контекстное меню этого элемента (SHIFT+F10) и выберите Удалить. Для подтверждения выберите ОК.

  • Выберите элемент и нажмите клавишу DELETE. Для подтверждения выберите ОК.

  • Выберите элемент, чтобы открыть область сведений об этом элементе. В верхнем правом углу это области откройте меню с многоточием ( ) и выберите Удалить. Для подтверждения выберите ОК.

    Снимок экрана, на котором показан выбранный в конструкторе элемент с открытой областью сведений, а также выделенная кнопка с многоточием и пункт "Удалить".

    Совет

    Если меню с многоточием не отображается, разверните окно Visual Studio Code достаточно широко для того, чтобы в правом верхнем углу в области сведений появилась кнопка с многоточием ( ... ).

Устранение ошибок и проблем

Не удается открыть конструктор

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

  1. Откройте в Visual Studio Code окно вывода. В меню Вид выберите пункт Вывод.

  2. В списке в заголовке окна вывода выберите Azure Logic Apps (стандартная версия) , чтобы просмотреть выходные данные, полученные при использовании расширения.

    Снимок экрана: окно вывода с выбранным параметром "Azure Logic Apps".

  3. Просмотрите выходные данные и проверьте, отображается ли это сообщение об ошибке:

    A host error has occurred during startup operation '{operationID}'.
    System.Private.CoreLib: The file 'C:\Users\{userName}\AppData\Local\Temp\Functions\
    ExtensionBundles\Microsoft.Azure.Functions.ExtensionBundle.Workflows\1.1.7\bin\
    DurableTask.AzureStorage.dll' already exists.
    Value cannot be null. (Parameter 'provider')
    Application is shutting down...
    Initialization cancellation requested by runtime.
    Stopping host...
    Host shutdown completed.
    

Чтобы устранить эту ошибку, удалите папку ExtensionBundles по адресу ...\Users{ваше_имя_пользователя}\AppData\Local\Temp\Functions\ExtensionBundles и попробуйте открыть файл workflow.json в конструкторе еще раз.

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

Azure Logic Apps с одним клиентом поддерживает встроенные действия для операций с использованием среды "Функции Azure", операций Liquid и XML-операций, таких как проверка XML и преобразование XML. Однако для приложений логики, созданных ранее, эти действия могут не отображаться в средстве выбора конструктора, если Visual Studio Code использует устаревшую версию пакета расширений Microsoft.Azure.Functions.ExtensionBundle.Workflows.

Кроме того, соединитель и действия в Операциях Функций Azure не отображаются в средстве выбора конструктора, если при создании приложения логики вы не включили или не выбрали Использование соединителей из Azure. Если вы не включили соединители, развернутые в Azure, во время создания приложения, их можно включить в проекте в Visual Studio Code. Откройте контекстное меню для файла workflow.json и выберите команду Использовать соединители из Azure.

Чтобы устранить проблему с устаревшим пакетом расширений, выполните указанные ниже действия, чтобы удалить устаревший пакет — в результате Visual Studio Code автоматически обновит пакет расширений до последней версии.

Примечание

Это решение относится только к приложениям логики, созданным и развернутым с помощью редактора Visual Studio Code с расширением Azure Logic Apps (стандартная версия), и не подходит для приложений логики, созданных с помощью портала Azure. См. раздел Поддерживаемые триггеры и действия отсутствуют в конструкторе на портале Azure.

  1. Сохраните все результаты работы, которые вы не хотите потерять, и закройте Visual Studio.

  2. На компьютере откройте следующую папку, содержащую версии папок для существующего пакета:

    ...\Users\{your-username}\.azure-functions-core-tools\Functions\ExtensionBundles\Microsoft.Azure.Functions.ExtensionBundle.Workflows

  3. Удалите папку версии для предыдущего пакета, например, если у вас есть папка для версии 1.1.3, удалите эту папку.

  4. Теперь перейдите в следующую папку, содержащую версии папок для требуемого пакета NuGet:

    ...\Users\{your-username}\.nuget\packages\microsoft.azure.workflows.webjobs.extension

  5. Удалите папку версии для более раннего пакета.

  6. Снова откройте Visual Studio Code, свой проект, а затем файл workflow.json в конструкторе.

Теперь отсутствующие триггеры и действия должны отображаться в конструкторе.

В триггере или действии отображается сообщение "400 Недопустимый запрос"

Если при выполнении произошел сбой и вы проверяете выполнение в представлении мониторинга, эта ошибка может возникнуть в триггере или действии с длинным именем, из-за которое соответствующий универсальный код ресурса (Uniform Resource Identifier, URI) превышает ограничение на количество символов по умолчанию.

Чтобы решить эту проблему и увеличить допустимую длину URI, измените разделы реестра UrlSegmentMaxCount и UrlSegmentMaxLength на компьютере, выполнив описанные ниже действия. Значения этих разделов по умолчанию описаны в статье Параметры реестра http.sys для Windows.

Важно!

Перед началом работы обязательно сохраните работу. Чтобы изменения вступили в силу, после их выполнения компьютер нужно будет перезагрузить.

  1. На компьютере откройте окно Выполнить и выполните команду regedit, которая открывает редактор реестра.

  2. В поле Контроль учетных записей пользователей выберите Да, чтобы разрешить внесение изменений на компьютере.

  3. В области слева в разделе Компьютер разверните узлы в пути HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP\Parameters, а затем выберите Параметры.

  4. В области справа найдите разделы реестра UrlSegmentMaxCount и UrlSegmentMaxLength.

  5. Увеличьте эти значения разделов, чтобы URI мог принимать необходимые вам имена. Если этих разделов не существует, добавьте их в папку Параметры, выполнив следующие действия:

    1. В контекстном меню для папки Параметры выберите команду Создать > Значение DWORD (32-разрядная версия) .

    2. В появившемся поле ввода введите UrlSegmentMaxCount в качестве нового имени раздела.

    3. Откройте контекстное меню для нового раздела и выберите команду Изменить.

    4. В появившемся поле Изменить строку введите желаемое значение раздела Данные значения в шестнадцатеричном или десятичном формате. Например, значение 400 в шестнадцатеричном формате эквивалентно значению 1024 в десятичном.

    5. Повторите эти действия, чтобы добавить значение раздела UrlSegmentMaxLength.

    После увеличения или добавления значений этих разделов редактор реестра будет выглядеть следующим образом:

    Снимок экрана: редактор реестра.

  6. Закончив внесение изменений, перезагрузите компьютер, чтобы они вступили в силу.

Не удается запустить сеанс отладки

При попытке запустить сеанс отладки появляется сообщение об ошибке "После выполнения предварительной задачи 'generateDebugSymbols' возникает ошибка" . Чтобы решить эту проблему, измените файл tasks.json в своем проекте так, чтобы пропустить создание символов.

  1. В проекте разверните папку с расширением .vscode и откройте файл tasks.json.

  2. В следующей задаче удалите строку "dependsOn: "generateDebugSymbols" вместе с запятой, завершающей предыдущую строку, например:

    Перед следующей операцией.

     {
       "type": "func",
       "command": "host start",
       "problemMatcher": "$func-watch",
       "isBackground": true,
       "dependsOn": "generateDebugSymbols"
     }
    

    После следующих операций.

     {
       "type": "func",
       "command": "host start",
       "problemMatcher": "$func-watch",
       "isBackground": true
     }
    

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

Мы хотели бы узнать о ваших впечатлениях от использования расширения Azure Logic Apps (стандартная версия).