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


Включение режима отслеживания состояния для встроенных соединителей без отслеживания состояния в Azure Logic Apps

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

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

  • Служебная шина Azure
  • SAP
  • IBM MQ

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

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

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

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

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

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

    2. В разделе конфигурации исходящего трафика рядом с интеграцией виртуальной сети выберите "Не настроена>интеграция виртуальной сети".

    3. На открывающейся панели "Добавление интеграции с виртуальной сетью" выберите подписку Azure и виртуальную сеть.

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

    5. По завершении нажмите кнопку "Подключиться" и вернитесь на страницу "Сеть ".

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

      Снимок экрана: портал Azure, ресурс приложения логики

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

  3. Затем обновите базовую конфигурацию веб-сайта приложения логики (<logic-app-name.azurewebsites.net>) с помощью любого из следующих средств:

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

После включения интеграции виртуальной сети для приложения логики необходимо обновить базовую конфигурацию веб-сайта приложения логики (<logic-app-name.azurewebsites.net>) с помощью одного из следующих методов:

  • портал Azure (маркер носителя не требуется)
  • API управления ресурсами Azure (обязательный маркер носителя)
  • Azure PowerShell (маркер носителя не требуется)

Портал Azure

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

  1. В портал Azure найдите и откройте ресурс приложения логики "Стандартный".
  2. В меню приложения логики в разделе Параметры выберите Настройка.
  3. На странице "Конфигурация" выберите общие параметры.
  4. В разделе "Параметры платформы" в поле "Частные порты виртуальной сети" введите порты, которые требуется использовать.

API управления ресурсами Azure

Чтобы выполнить эту задачу с помощью API управления ресурсами Azure . Обновление по идентификатору, ознакомьтесь со следующими требованиями, синтаксисом и значениями параметров.

Требования

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

  1. Во время входа в портал Azure откройте средства разработчика веб-браузера (F12).

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

Синтаксис

Обновляет ресурс с помощью указанного идентификатора ресурса:

PATCH https://management.azure.com/{resourceId}?api-version=2021-04-01

Значения параметров

Элемент Значение
Метод HTTP-запроса PATCH
<resourceId> subscriptions/{yourSubscriptionID}/resourcegroups/{yourResourceGroup}/providers/Microsoft.Web/sites/{siteName}/config/web
<yourSubscriptionId> Идентификатор подписки Azure
<yourResourceGroup> Группа ресурсов, содержащая ресурс приложения логики
<имя веб-сайта> Имя ресурса приложения логики, которое является mystandardlogicapp в этом примере
Текст HTTP-запроса {"properties": {"vnetPrivatePortsCount": "2"}}

Пример

https://management.azure.com/subscriptions/XXxXxxXX-xXXx-XxxX-xXXX-XXXXxXxXxxXX/resourcegroups/My-Standard-RG/providers/Microsoft.Web/sites/mystandardlogicapp/config/web?api-version=2021-02-01

Azure PowerShell

Чтобы выполнить эту задачу с помощью Azure PowerShell, ознакомьтесь со следующими требованиями, синтаксисом и значениями. Этот метод не требует получения маркера носителя вручную.

Синтаксис

Set-AzContext -Subscription {yourSubscriptionID}
$webConfig = Get-AzResource -ResourceId {resourceId}
$webConfig.Properties.vnetPrivatePortsCount = 2
$webConfig | Set-AzResource -ResourceId {resourceId}

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

Значения параметров

Элемент Значение
<yourSubscriptionID> Идентификатор подписки Azure
<resourceId> subscriptions/{yourSubscriptionID}/resourcegroups/{yourResourceGroup}/providers/Microsoft.Web/sites/{siteName}/config/web
<yourResourceGroup> Группа ресурсов, содержащая ресурс приложения логики
<имя веб-сайта> Имя ресурса приложения логики, которое является mystandardlogicapp в этом примере

Пример

https://management.azure.com/subscriptions/XXxXxxXX-xXXx-XxxX-xXXX-XXXXxXxXxxXX/resourcegroups/My-Standard-RG/providers/Microsoft.Web/sites/mystandardlogicapp/config/web?api-version=2021-02-01

Устранение неполадок

Ошибка: число зарезервированных экземпляров недопустимо

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

$webConfig.Properties.preWarmedInstanceCount = $webConfig.Properties.reservedInstanceCount
$webConfig.Properties.reservedInstanceCount = $null
$webConfig | Set-AzResource -ResourceId {resourceId}

Пример ошибки:

Set-AzResource :
{
   "Code":"BadRequest",
   "Message":"siteConfig.ReservedInstanceCount is invalid.  Please use the new property siteConfig.PreWarmedInstanceCount.",
   "Target": null,
   "Details":
   [
      {
         "Message":"siteConfig.ReservedInstanceCount is invalid. Please use the new property siteConfig.PreWarmedInstanceCount."
      },
      {
         "Code":"BadRequest"
      },
      {
         "ErrorEntity":
         {
            "ExtendedCode":"51021",
            "MessageTemplate":"{0} is invalid. {1}",
            "Parameters":
            [
               "siteConfig.ReservedInstanceCount", "Please use the new property siteConfig.PreWarmedInstanceCount."
            ],
            "Code":"BadRequest",
            "Message":"siteConfig.ReservedInstanceCount is invalid. Please use the new property siteConfig.PreWarmedInstanceCount."
         }
      }
   ],
   "Innererror": null
}

Предотвращение потери контекста во время событий масштабирования ресурсов

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

  1. В меню ресурсов приложения логики в разделе "Параметры" выберите "Горизонтальное масштабирование".

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

    1. Задайте для ограничения горизонтального увеличения масштаба значение "Да", в котором отображается максимальное ограничение горизонтального масштабирования.

    2. Задайте для экземпляров Always Ready то же число, что и максимальное ограничение горизонтального масштабирования и максимальное ускорение, которое отображается в разделе "Горизонтальное масштабирование плана", например:

    Снимок экрана: портал Azure, ресурс приложения логики

  3. По завершении на панели инструментов горизонтального масштабирования нажмите кнопку "Сохранить".

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