Поделиться через


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

Область применения: Azure Logic Apps (потребление)

В этом кратком руководстве показано, как создавать рабочие процессы приложения логики и управлять ими, которые помогают автоматизировать задачи и процессы, которые интегрируют приложения, системы, системы и службы в организациях и предприятиях с помощью мультитенантных приложений Azure Logic Apps и Visual Studio Code. Вы можете создать и изменить базовые определения рабочего процесса, которые используют нотацию объектов JavaScript (JSON) для приложений логики, через код. Вы также можете работать с приложениями логики, уже развернутыми в Azure. Дополнительные сведения о мультитенантной и однотенантной модели см . в статье "Один клиент" и "Мультитенант" в Azure Logic Apps.

Несмотря на то, что эти задачи можно выполнять на портале Azure и в Visual Studio, Visual Studio Code позволяет быстрее приступить к работе если вы уже знакомы с приложением логики и хотите работать непосредственно в коде. Например, также можно отключать, включать, удалять и обновлять уже созданные приложения логики. Кроме того, вы можете работать в приложениях логики и учетных записях интеграции на любой платформе разработки с поддержкой Visual Studio Code, например Linux, Windows и Mac.

В этой статье вы можете создать то же приложение логики из этого краткого руководства, которое демонстрирует основные понятия. Вы также можете узнать, как создать пример приложения в Visual Studio, а также как создавать приложения и управлять ими с помощью Azure CLI. В Visual Studio Code приложение логики выглядит так, как показано в следующем примере.

Пример определения рабочего процесса приложения логики

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

Прежде чем начать, убедитесь, что у вас есть эти элементы:

Доступ к Azure из Visual Studio Code

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

    Выберите значок Azure на панели инструментов Visual Studio Code

  2. В окне Azure в разделе Logic Apps выберите пункт Sign in to Azure (Войти в Azure). Когда отобразится запрос страницы входа Майкрософт, войдите с помощью учетной записи Azure.

    Выбор пункта

    1. Если вход занимает больше времени, Visual Studio Code предложит вам войти через веб-сайт проверки подлинности Майкрософт, предоставив вам код устройства. Чтобы выполнить вход с помощью кода, нажмите кнопку Use Device Code (Использовать код устройства).

      Продолжение действий с кодом устройства

    2. Чтобы скопировать код, нажмите кнопку Copy & Open (Копировать и открыть).

      Копирование кода для входа в Azure

    3. Чтобы открыть новое окно браузера и перейти на веб-сайт проверки подлинности, нажмите кнопку Открыть ссылку.

      Подтверждение открытия браузера и перехода на веб-сайт проверки подлинности

    4. На странице Войдите в учетную запись введите код проверки подлинности и нажмите кнопку Далее.

      Введение кода проверки подлинности для входа в Azure

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

    На панели Azure в разделе Logic Apps и Учетные записи интеграции теперь отображаются подписки Azure, связанные с вашей учетной записью. Однако если вы не видите нужных подписок или если в разделах отображается слишком много подписок, сделайте следующее:

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

      Поиск или фильтрация подписок Azure

    2. В появившемся списке выберите подписки, которые должны отображаться.

  4. В разделе Logic Apps выберите нужную подписку. Узел подписки разворачивается и отображает все приложения логики, которые существуют в этой подписке.

    Выберите подписку Azure.

    Совет

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

Создание приложения логики

  1. Если вы еще не вошли в учетную запись Azure и подписку из Visual Studio Code, выполните предыдущие действия, чтобы войти.

  2. В Visual Studio Code в разделе Logic Apps откройте контекстное меню своей подписки и выберите Создать приложение логики.

    Выбор пункта

    Появится список, в котором отобразятся все группы ресурсов Azure в вашей подписке.

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

    создадим группу ресурсов Azure;

  4. Укажите имя для группы ресурсов Azure и нажмите клавишу ВВОД.

    Укажите имя для группы ресурсов Azure

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

    Выберите расположение Azure для сохранения метаданных приложения логики

  6. Укажите имя приложения логики и нажмите клавишу ВВОД.

    Укажите имя приложения логики.

    В окне Azure в подписке Azure появится новое и пустое приложение логики. Visual Studio Code также открывает файл JSON (.logicapp.json), который содержит схему определения рабочего процесса для приложения логики. Теперь можно вручную выполнить разработку определения рабочего процесса приложения логики в этом JSON-файле. Технические справочные сведения о структуре и синтаксисе определения рабочего процесса см. в разделе Schema reference guide for the Workflow Definition Language in Azure Logic Apps (Справочное руководство по схеме для языка определения рабочих процессов в Azure Logic Apps).

    JSON-файл определения рабочего процесса пустого приложения логики

    Например, ниже приведен пример определения рабочего процесса приложения логики, который начинается с триггера RSS и действия Office 365 Outlook. Обычно элементы JSON отображаются в каждом разделе в алфавитном порядке. Однако в этом примере эти элементы отображаются приблизительно в том порядке, в котором в конструкторе отображаются шаги приложения логики.

    Внимание

    Если вы хотите повторно использовать этот пример определения приложения логики, вам потребуется учетная запись организации, например @fabrikam.com. Обязательно замените вымышленный адрес электронной почты своим. Чтобы использовать другой соединитель электронной почты, например Outlook.com или Gmail, замените действие Send_an_email_action аналогичным действием, доступным в соединителе электронной почты, поддерживаемом Azure Logic Apps.

    Только учетные записи для бизнеса G-Suite могут использовать соединитель Gmail без ограничений в приложениях логики. Если у вас есть учетная запись потребителя Gmail, вы можете использовать этот соединитель только с определенными утвержденными Google службами. Кроме того, вы можете создать клиентское приложение Google, которое будет использоваться для проверки подлинности в соединителе Gmail. Дополнительные сведения см. в статье Политики безопасности и конфиденциальности данных для соединителей Google в Azure Logic Apps.

    {
       "$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#",
       "contentVersion": "1.0.0.0",
       "parameters": {
          "$connections": {
             "defaultValue": {},
             "type": "Object"
          }
       },
       "triggers": {
          "When_a_feed_item_is_published": {
             "recurrence": {
                "frequency": "Minute",
                "interval": 1
             },
             "splitOn": "@triggerBody()?['value']",
             "type": "ApiConnection",
             "inputs": {
                "host": {
                   "connection": {
                      "name": "@parameters('$connections')['rss']['connectionId']"
                   }
                },
                "method": "get",
                "path": "/OnNewFeed",
                "queries": {
                   "feedUrl": "http://feeds.reuters.com/reuters/topNews"
                }
             }
          }
       },
       "actions": {
          "Send_an_email_(V2)": {
             "runAfter": {},
             "type": "ApiConnection",
             "inputs": {
                "body": {
                   "Body": "<p>Title: @{triggerBody()?['title']}<br>\n<br>\nDate published: @{triggerBody()?['updatedOn']}<br>\n<br>\nLink: @{triggerBody()?['primaryLink']}</p>",
                   "Subject": "RSS item: @{triggerBody()?['title']}",
                   "To": "sophia-owen@fabrikam.com"
                },
                "host": {
                   "connection": {
                      "name": "@parameters('$connections')['office365']['connectionId']"
                   }
                },
                "method": "post",
                "path": "/v2/Mail"
             }
          }
       },
       "outputs": {}
    }
    
  7. Когда все будет готово, сохраните определение рабочего процесса приложения логики. (Меню "Файл > Сохранить" или нажмите клавиши CTRL + S)

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

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

    Передайте новое приложение логики в подписку Azure

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

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

В окне Azure в разделе Logic Apps откройте контекстное меню приложения логики и выберите пункт Open in Designer (Открыть в конструкторе).

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

Просмотр приложения логики в конструкторе только для чтения

Просмотреть на портале Azure

Чтобы просмотреть приложение логики на портале Azure, сделайте следующее:

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

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

    Новое приложение логики на портале Azure

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

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

Внимание

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

  1. Если вы еще не вошли в учетную запись Azure и подписку из Visual Studio Code, выполните предыдущие действия, чтобы войти.

  2. В окне Azure в разделе Logic Apps разверните подписку Azure и выберите нужное приложение логики.

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

    Открытие редактора для имеющегося приложения логики

    Visual Studio Code открывает файл .logicapp.json в локальной временной папке, чтобы можно было просмотреть определение рабочего процесса приложения логики.

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

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

  5. Сохраните изменения, когда закончите. (Меню "Файл > Сохранить" или нажмите клавиши CTRL + S)

  6. При появлении запроса на отправку изменений и перезапись имеющегося приложения логики на портале Azure выберите пункт Отправить.

    На этом этапе обновления для приложения логики публикуются на портале Azure.

    Отправка изменений в определение приложения логики в Azure

Просмотр или повышение уровня других версий

В Visual Studio Code можно открыть и проверить более ранние версии приложения логики, а также повысить уровень версии с более ранней на текущую.

Внимание

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

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

  2. Разверните приложение логики в подписке и узел Версии.

    В списке Версии отображаются более ранние версии приложения логики, если они существуют.

    Предыдущие версии приложения логики

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

    • Чтобы просмотреть определение JSON, в разделе Версии выберите номер версии для этого определения. Вы также можете открыть контекстное меню этой версии и выбрать пункт Open in Editor (Открыть в редакторе).

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

    • Чтобы просмотреть версию в режиме конструктора только для чтения, откройте контекстное меню этой версии и выберите пункт Open in Designer (Открыть в конструкторе).

  4. Чтобы повысить уровень версии с более раннего на текущий, сделайте следующее:

    1. В разделе Версии откройте контекстное меню более ранней версии и выберите пункт Повысить уровень.

      Повышение уровня более ранней версии

    2. Visual Studio Code запросит подтверждение. Чтобы продолжить, нажмите кнопку Да.

      Подтверждение повышения уровня более ранней версии

      Visual Studio Code повышает уровень выбранной версии до уровня текущей версии и присваивает этой версии новый номер. Ранее текущая версия отображается теперь как версия повышенного уровня.

Отключение и включение приложений логики

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

  • Azure Logic Apps продолжит все выполняющиеся и ожидающие выполнения операции, пока они не будут завершены. Этот процесс может занять некоторое время в зависимости от объема или от невыполненной работы.

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

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

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

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

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

  1. Если вы еще не вошли в учетную запись Azure и подписку из Visual Studio Code, выполните предыдущие действия, чтобы войти.

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

    1. Чтобы отключить требуемое приложение логики, откройте меню приложения логики и выберите Отключить.

      Отключение приложения логики

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

      Включение приложения логики

Удаление приложения логики

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

  • Azure Logic Apps пытается отменить все выполняющиеся и ожидающие выполнения операции.

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

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

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

  1. Если вы еще не вошли в учетную запись Azure и подписку из Visual Studio Code, выполните предыдущие действия, чтобы войти.

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

  3. Найдите требуемое приложение логики, откройте меню приложения логики и выберите Отключить.

    Удаление приложения логики

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