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


Изменение настроек приложения и среды для логических приложений стандартного уровня в Azure Logic Apps в однопользовательской среде

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

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

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

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

Параметры — это пары "ключ-значение" , определяющие имя и значение параметра.

Настройки, параметры и развертывание приложения

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

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

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

Note

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

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

Структура проекта Visual Studio Code

В Visual Studio Code ваш проект приложения логики может относиться к одному из следующих типов:

  • На основе пакета расширений (Node.js) — это тип по умолчанию
  • На основе пакета NuGet (.NET) — его можно преобразовать из типа по умолчанию

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

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

Проект пакета расширений по умолчанию имеет папку и структуру файлов, аналогичную следующему примеру:

MyWorkspaceName
| MyBundleBasedLogicAppProjectName
  || .vscode
  || Artifacts
     ||| Maps 
         |||| MapName1
         |||| ...
     ||| Rules
     ||| Schemas
         |||| SchemaName1
         |||| ...
  || lib
     ||| builtinOperationSdks
         |||| JAR
         |||| net472
     ||| custom
  || WorkflowName1
     ||| workflow.json
     ||| ...
  || WorkflowName2
     ||| workflow.json
     ||| ...
  || workflow-designtime
     ||| host.json
     ||| local.settings.json
  || .funcignore
  || connections.json
  || host.json
  || local.settings.json

На корневом уровне проекта можно найти следующие папки и файлы вместе с другими элементами:

Name Папка или файл Description
.vscode Folder Содержит файлы параметров для Visual Studio Code, в том числе файлы extensions.json, launch.json, settings.json и tasks.json files.
Artifacts Folder Содержит артефакты учетной записи интеграции, которые вы можете определить и использовать в рабочих процессах, поддерживающих сценарии B2B.

Например, пример структуры включает следующие папки:

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

- Схемы: содержит схемы , используемые для операций проверки XML.

- Правила: артефакты бизнес-правил для проектов систем на основе правил.
lib Folder Содержит поддерживаемые сборки, которые ваше логическое приложение может использовать или на которые можно ссылаться. Эти сборки можно передать в проект в Visual Studio Code, но их необходимо добавить в определенные папки в проекте.

Например, эта папка содержит следующие папки:

- builtinOperationSdks: содержит папки JAR и net472 для сборок Java и .NET Framework соответственно.

- custom: содержит пользовательские сборки .NET Framework.

Дополнительные сведения о поддерживаемых типах сборок и их расположении в проекте см. в разделе "Добавление сборок в проект".
< Имя рабочего процесса> Folder Для каждого рабочего процесса папка <WorkflowName> включает файл workflow.json, содержащий базовое для этого рабочего процесса определение JSON.
workflow-designtime Folder Содержит файлы параметров для среды разработки.
.funcignore File Содержит сведения, касающиеся установленного набора Azure Functions Core Tools.
connections.json File Содержит метаданные, конечные точки и ключи для всех управляемых подключений и функций Azure, используемых рабочими процессами.

Внимание! Чтобы в каждой среде использовать разные подключения и функции, не забудьте параметризовать этот файл connections.json и обновить конечные точки.
host.json File Содержит параметры конфигурации и значения для среды выполнения, например ограничения по умолчанию для платформы Azure Logic Apps с одним клиентом, приложения логики, рабочие процессы, триггеры и действия. На корневом уровне проекта приложения логики файл метаданных host.json содержит параметры конфигурации и значения по умолчанию, которые используют все рабочие процессы при выполнении, будь то локально или в Azure. Справочные сведения см. в разделе "Изменение параметров приложения" и параметров узла.

Примечание. При создании приложения логики Visual Studio Code создает резервный файл host.snapshot.*.json в контейнере хранилища. Если вы удалите приложение логики, этот файл резервной копии не будет удален. Если создать другое приложение логики с тем же именем, будет создан другой файл моментального снимка. Для одного и того же приложения логики можно использовать до 10 моментальных снимков. Если вы превышаете это ограничение, вы получите следующую ошибку:

Microsoft.Azure.WebJobs.Script.WebHost: Repository has more than 10 non-decryptable secrets backups (host))

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

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

Внимание! Файл local.settings.json может содержать секреты, поэтому не забудьте исключить его из системы управления версиями своего проекта. Этот файл также содержит параметры, необходимые для корректной работы вашего логического приложения. Справочные сведения см. в разделе "Изменение параметров приложения" и параметров узла.

Справочник по настройкам приложения — local.settings.json

В Visual Studio Code на корневом уровне проекта приложения логики файл local.settings.json содержит глобальные параметры конфигурации, влияющие на все рабочие процессы в этом приложении логики во время выполнения в локальной среде разработки. Когда рабочие процессы выполняются локально, доступ к этим параметрам осуществляется как к локальным переменным среды. При этом их значения часто изменяются при использовании различных сред, в которых выполняются рабочие процессы. Сведения о просмотре этих параметров и управлении ими см. в статье "Управление параметрами приложения" — local.settings.json.

Параметры приложения в Azure Logic Apps работают аналогично параметрам приложения в службе "Функции Azure" или службе "Веб-приложения Azure". Если вы раньше использовали эти службы, возможно, что вы уже знакомы с параметрами приложений. Дополнительные сведения см. в справочнике по параметрам приложений для функций Azure и работе с основными инструментами Функций Azure — локальным файлом параметров.

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

Setting Required Value Description
APP_KIND Yes workflowApp Требуется задать тип приложения для ресурса стандартного логического приложения. Необходимо установить значение workflowApp.

Примечание. В некоторых сценариях этот параметр приложения может быть пропущен, например из-за автоматизации с помощью шаблонов Azure Resource Manager или других сценариев, в которых параметр не включен. Если некоторые действия не работают, например действие "Выполнение кода JavaScript" или если рабочий процесс перестает работать, убедитесь, что параметр приложения APP_KIND существует и имеет значение workflowApp.
AZURE_AUTHORITY_HOST No None Устанавливает стандартное удостоверение приложения логики уровня "Стандартный" для использования при аутентификации с помощью OAuth.
AzureWebJobsStorage Yes None Требуется задать строку подключения для учетной записи Azure для хранения. Дополнительные сведения см. в статье AzureWebJobsStorage.
FUNCTIONS_EXTENSION_VERSION Yes ~4 Необходимо указать версию Azure Functions. Дополнительные сведения см. в FUNCTIONS_EXTENSION_VERSION.
FUNCTIONS_WORKER_RUNTIME Yes dotnet Требуется задать среду выполнения языкового рабочего процесса для ресурса и рабочих процессов вашего приложения логики.

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

Дополнительные сведения см. в FUNCTIONS_WORKER_RUNTIME.
ServiceProviders.Sftp.FileUploadBufferTimeForTrigger No 00:00:20
(20 секунд)
Задает время буфера, чтобы игнорировать файлы с меткой времени последнего изменения, превышающей текущее время. Этот параметр полезен, когда запись больших файлов занимает много времени, и он позволяет избежать извлечения данных для частично записанного файла.
ServiceProviders.Sftp.OperationTimeout No 00:02:00
(2 мин)
Задает время ожидания перед тем, как истечет тайм-аут для любой операции.
ServiceProviders.Sftp.ServerAliveInterval No 00:30:00
(30 мин)
Отправляет сообщение о сохранении активности , чтобы сохранить подключение SSH активным, если обмен данными с сервером не выполняется в течение указанного периода.
ServiceProviders.Sftp.SftpConnectionPoolSize No 2 соединений Задает количество подключений, которые каждый процессор может кэшировать. Общее количество подключений, которые можно кэшировать, — ProcessorCount умножено на значение параметра.
ServiceProviders.MaximumAllowedTriggerStateSizeInKB No 10 КБ, что составляет ~1000 файлов Задает размер сущности состояния триггера в килобайтах, которая пропорциональна количеству файлов в отслеживаемой папке и используется для обнаружения файлов. Если число файлов превышает 1000, увеличьте это значение.
ServiceProviders.Sql.QueryTimeout No 00:02:00
(2 мин)
Задает значение времени ожидания запроса для операций поставщика службы SQL.
WEBSITE_CONTENTSHARE Yes Dynamic Требуется задать имя для файлового хранилища, используемого Azure Functions для хранения кода приложения функций и файлов конфигурации, и используемого с WEBSITE_CONTENTAZUREFILECONNECTIONSTRING. По умолчанию используется уникальная строка, созданная средой выполнения. Дополнительные сведения см. в WEBSITE_CONTENTSHARE.
WEBSITE_LOAD_ROOT_CERTIFICATES No None Задает отпечатки корневых сертификатов, которым следует доверять.
WEBSITE_NODE_DEFAULT_VERSION Yes ~ < Версия> Задает версию Node.js при запуске рабочих процессов приложения логики в Windows. Используйте тильду (~), чтобы среда выполнения Azure Logic Apps использовала последнюю доступную версию целевой основной версии. Например, если задано значение ~18, используется последняя версия Node.js 18. При использовании тильды с главной версией вам не нужно вручную обновлять минорную версию.

Дополнительные сведения см. WEBSITE_NODE_DEFAULT_VERSION.
Workflows.Connection.AuthenticationAudience No None Задает целевую аудиторию для аутентификации управляемого (размещенного в Azure) подключения.
Workflows.CustomHostName No None Задает имя узла, используемое для URL-адресов рабочего процесса и входных выходных данных, например logic.contoso.com. Сведения о настройке пользовательского DNS-имени см. в статье "Настройка существующего личного домена в службе приложений Azure " и включение HTTPS для личного домена в Службе приложений Azure.
Workflows.<workflowName>.FlowState No None Задает состояние для <workflowName>.
Workflows.<workflowName>.RuntimeConfiguration.RetentionInDays No 90 дней Задает количество дней для сохранения журнала выполнения для <workflowName>.

- Минимум: 7 дней
- Максимум: 365 дней
Workflows.RuntimeConfiguration.RetentionInDays No 90 дней Задает период времени в днях для сохранения истории выполнения рабочего процесса после его начала.

- Минимум: 7 дней
- Максимум: 365 дней
Workflows.WebhookRedirectHostUri No None Задает имя узла, которое будет использоваться для URL-адресов обратного вызова веб-перехватчика.

Управление параметрами приложения — local.settings.json

Чтобы добавить, обновить или удалить параметры приложения, выберите и просмотрите следующие разделы портала Azure, Visual Studio Code или Azure CLI. Параметры приложения, относящиеся к приложениям логики, см. в статье "Справочник по параметрам приложения" — local.settings.json.

Просмотр параметров приложения на портале
  1. В поле поиска на портале Azure найдите и откройте приложение логики.

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

  3. На странице переменных среды на вкладке «Параметры приложения» просмотрите параметры для вашего логического приложения.

    Дополнительные сведения об этих параметрах см. в статье "Справочник по параметрам приложения " local.settings.json".

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

Добавление параметра приложения на портале
  1. На вкладке "Параметры приложения " на панели инструментов нажмите кнопку "Добавить".

  2. На панели Добавление/Изменение параметров приложения для Имя введите ключ или имя нового параметра.

  3. В поле "Значение" введите значение нового параметра.

  4. Закончив, нажмите кнопку Применить.

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

Справочник по параметрам узла — host.json

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

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

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

Setting Значение по умолчанию Description
Jobs.BackgroundJobs.DispatchingWorkersPulseInterval 00:00:01
(1 с)
Задает интервал опроса очереди заданий диспетчерами заданий, когда предыдущий опрос не приводит к возврату заданий. Диспетчеры заданий опрашивают очередь сразу же после возврата задания в результате выполнения предыдущего опроса.
Jobs.BackgroundJobs.NumPartitionsInJobDefinitionsTable 4 разделы задания Задает количество разделов задания в таблице определения задания. Это значение определяет степень влияния ограничений хранилища разделов на пропускную способность.
Jobs.BackgroundJobs.NumPartitionsInJobTriggersQueue 1 очередь заданий Задает количество очередей заданий, отслеживаемых диспетчерами заданий для обработки. Это значение также влияет на количество разделов хранилища, где существуют очереди заданий.
Jobs.BackgroundJobs.NumWorkersPerProcessorCount 192 экземпляры рабочих процессов диспетчера Задает количество экземпляров рабочих ролей диспетчера или диспетчеров заданий для каждого ядра процессора. Это значение влияет на количество запусков рабочих процессов для каждого ядра.
Jobs.BackgroundJobs.StatelessNumWorkersPerProcessorCount 192 экземпляры рабочих процессов диспетчера Задает количество экземпляров рабочих процессов диспетчера или диспетчеров задач для каждого ядра процессора для каждой работы без сохранения состояния. Это значение влияет на количество параллельных действий рабочих процессов, обрабатываемых на каждый запуск.

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

Note

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

Setting Значение по умолчанию Description
Jobs.CleanupJobPartition None Немедленно удаляет все задания выполнения для указанных рабочих процессов.
Jobs.SuspendedJobPartition None Останавливает задания выполнения для указанных рабочих процессов.
SequencerJobs.SuspendedSequencerPartition None Останавливает выполнение заданий последовательности для указанных рабочих процессов.

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

"Jobs.CleanupJobPartition": "<workflow-ID-1>:;<workflow-ID-2>",
"Jobs.SuspendedJobPartition": "<workflow-ID-1>:;<workflow-ID-2>:",
"SequencerJobs.SuspendedSequencerPartition": "<workflow-ID-1>:;<workflow-ID-2>:"

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

"Jobs.SuspendedJobPartition": "<workflow-ID-1>:2D<run-ID>;",

Триггеры на основе повторения

Setting Значение по умолчанию Description
Microsoft.Azure.Workflows.ServiceProviders.MaximumAllowedTriggerStateSizeInKB 1 КБ Задает максимально допустимый размер состояния триггера для триггеров, основанных на повторении, например встроенный триггер SFTP. Состояние триггера сохраняет данные между несколькими основанными на повторении триггерами поставщика услуг.

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

Параллелизм триггера

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

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

Setting Значение по умолчанию Description
Runtime.Trigger.MaximumRunConcurrency 100 запуски Задает максимальное количество одновременных запусков, которые может активировать триггер. Это значение отображается в определении параллелизма триггера.
Runtime.Trigger.MaximumWaitingRuns 200 запуски Задает максимальное число запусков, которые могут находиться в состоянии ожидания после достижения максимального количества параллельных запусков. Это значение отображается в определении параллелизма триггера. Дополнительные сведения см. в Изменение ограничения для ожидающих запусков.

Длительность выполнения и хранение истории

Setting Значение по умолчанию Description
Runtime.Backend.FlowRunTimeout 90.00:00:00
(90 дней)
Задает период времени, в течение которого рабочий процесс может продолжать выполняться перед принудительным тайм-аутом. Минимальное значение этого параметра — 7 дней.

Важно. Убедитесь, что это значение меньше или равно значению для параметра приложения с именем Workflows.RuntimeConfiguration.RetentionInDays. В противном случае журналы выполнения могут удаляться до завершения связанных заданий.
Runtime.FlowMaintenanceJob.RetentionCooldownInterval 7.00:00:00
(7 дней)
Задает период времени в днях в интервале между проверкой и удалением журнала выполнения, который больше не требуется хранить.

Запуск действий

Setting Значение по умолчанию Description
Runtime.FlowRunRetryableActionJobCallback.ActionJobExecutionTimeout 00:10:00
(10 минут)
Задает длительность выполнения задания действия рабочего процесса до истечения времени ожидания и повторных попыток. Чтобы изменить время ожидания по умолчанию для встроенной операции, например SAP, также задайте functionTimeout параметр узла. Дополнительные сведения см. в следующей записи.
functionTimeout 00:30:00
(30 минут)
Задает длительность выполнения перед истечением времени ожидания для вызовов из Функций Azure и некоторых встроенных операций, таких как SAP, которые работают в качестве вызовов функций. Стандартные приложения логики используют тот же базовый дизайн, что и приложения-функции. Таким образом, functionTimeout параметр узла в Функциях Azure также влияет на встроенные операции, которые выполняются в качестве вызовов функций. Дополнительные сведения см. в разделе functionTimeout.

Примечание: В файле host.json параметр существует на том же уровне, что и объект functionTimeout, где находятся параметры узла для логического приложения 'Стандартного типа'. Дополнительные сведения см. в примере в этом разделе: изменение значения времени ожидания для встроенных операций на основе функций.

Измените значение таймаута для встроенных операций, основанных на функциях

Для встроенных операций, которые выполняются в качестве вызовов функций в Функциях Azure, добавьте параметры узла Runtime.FlowRunRetryableActionJobCallback.ActionJobExecutionTimeout и functionTimeout в файл host.json, как показано в следующем примере:

{
   "version": "2.0",
   "extensionBundle": {
      "id": "Microsoft.Azure.Functions.ExtensionBundle.Workflows",
      "version": "[1.*, 2.0.0)"
   },
   "extensions": {
      "workflow": {
         "settings": {
            "Runtime.FlowRunRetryableActionJobCallback.ActionJobExecutionTimeout": "01:00:00"
         }
      }
   },
   "functionTimeout": "01:00:00"
}

Входные и выходные данные

Setting Значение по умолчанию Description
Microsoft.Azure.Workflows.TemplateLimits.InputParametersLimit 50 Изменяет ограничение по умолчанию для параметров рабочего процесса между средами до 500 для приложений логики уровня "Стандартный", созданных при экспорте приложений логики потребления.
Runtime.ContentLink.MaximumContentSizeInBytes 104857600 байт Задает максимальный размер в байтах, которые входные или выходные данные могут иметь в одном триггере или действии.
Runtime.FlowRunActionJob.MaximumActionResultSize 209715200 байт Задает максимальный размер в байтах, которые могут содержать объединенные входные и выходные данные в одном действии.

Pagination

Setting Значение по умолчанию Description
Runtime.FlowRunRetryableActionJobCallback.MaximumPageCount 1000 стр. Если разбиение на страницы поддерживается и включено для операции, задает максимальное число страниц, возвращаемых или обрабатываемых во время выполнения.

Chunking

Setting Значение по умолчанию Description
Runtime.FlowRunRetryableActionJobCallback.MaximumContentLengthInBytesForPartialContent 1073741824 байт Если операция поддерживает разделение на блоки, и оно включено, задает максимальный размер скачиваемого или передаваемого содержимого в байтах.
Runtime.FlowRunRetryableActionJobCallback.MaxChunkSizeInBytes 52428800 байт Если операция поддерживает разделение на блоки, и оно включено, задает максимальный размер в байтах для каждого блока содержимого.
Runtime.FlowRunRetryableActionJobCallback.MaximumRequestCountForPartialContent 1000 запросов Если операция поддерживает разделение на блоки, и оно включено, задает максимальное число запросов, совершаемых для скачивания содержимого при выполнении действия.

Сохраняйте содержимое в виде встроенных элементов или используйте BLOBs (бинарные большие объекты)

Setting Значение по умолчанию Description
Runtime.FlowRunEngine.ForeachMaximumItemsForContentInlining 20 элементов При выполнении цикла For each значение каждого элемента сохраняется либо встроенно вместе с другими метаданными в хранилище таблиц, либо отдельно в хранилище блобов. Задает количество элементов для их хранения непосредственно с другими метаданными.
Runtime.FlowRunRetryableActionJobCallback.MaximumPagesForContentInlining 20 стр. Задает максимальное количество страниц, которые нужно сохранить как встроенное содержимое в хранилище таблиц перед сохранением в хранилище блобов.
Runtime.FlowTriggerSplitOnJob.MaximumItemsForContentInlining 40 элементов Если триггер, поддерживающий разбивку пакетов, имеет включенный параметр Split on или splitOn, триггер разделяет элементы массива на несколько экземпляров рабочих процессов. Значение каждого элемента массива хранится либо в строке с другими метаданными в хранилище таблиц, либо отдельно в хранилище BLOB-объектов. Задает количество элементов для хранения в инлайн формате.
Runtime.ScaleUnit.MaximumCharactersForContentInlining 32384 символы Задает максимальное количество символов во входных и выходных данных операции для хранения непосредственно в хранилище таблиц перед сохранением в хранилище BLOB-объектов.

Циклы For each

Setting Значение по умолчанию Description
Runtime.Backend.FlowDefaultForeachItemsLimit 100000 элементы массива Для рабочего процесса с отслеживанием состояния задает максимальное количество элементов массива для обработки в цикле For each .
Runtime.Backend.FlowDefaultSplitOnItemsLimit 100000 элементы массива Задает максимальное количество элементов массива для дебатчинга или разделения на несколько экземпляров рабочих процессов, основанных на свойстве splitOn.
Runtime.Backend.ForeachDefaultDegreeOfParallelism 20 итераций Задает число параллельных итераций или степень параллелизма по умолчанию в цикле For each. Чтобы выполнение было последовательным, задайте значение 1.
Runtime.Backend.Stateless.FlowDefaultForeachItemsLimit 100 элементов Для рабочего процесса без отслеживания состояния задает максимальное количество элементов массива для обработки в цикле For each .

До циклов

Setting Значение по умолчанию Description
Runtime.Backend.MaximumUntilLimitCount 5000 итераций Для рабочего процесса с отслеживанием состояния задает максимально возможное число для свойства Count в действии Until.
Runtime.Backend.Stateless.FlowRunTimeout 00:05:00
(5 мин)
Задает максимальное время ожидания для цикла Until в рабочем процессе без сохранения состояния.
Runtime.Backend.Stateless.MaximumUntilLimitCount 100 итераций Для рабочего процесса без отслеживания состояния задает максимальное число, возможное для Count свойства в действии Until .

Variables

Setting Значение по умолчанию Description
Runtime.Backend.DefaultAppendArrayItemsLimit 100000 элементы массива Задает максимальное количество элементов в переменной типа "массив".
Runtime.Backend.VariableOperation.MaximumStatelessVariableSize Рабочий процесс без отслеживания состояния: 1024 символов Задает максимальный размер в символах для содержимого, которое может хранить переменная при использовании в рабочем процессе без отслеживания состояния.
Runtime.Backend.VariableOperation.MaximumVariableSize Рабочий процесс со состоянием: 104857600 символов Задает максимальный размер в символах для содержимого, которое может хранить переменная при использовании в рабочем процессе с отслеживанием состояния.

Встроенные операции HTTP

Setting Значение по умолчанию Description
Runtime.Backend.HttpOperation.DefaultRetryCount 4 повторов Задает количество повторных попыток по умолчанию для триггеров и действий HTTP.
Runtime.Backend.HttpOperation.DefaultRetryInterval 00:00:07
(7 с)
Задает интервал повторных попыток по умолчанию для триггеров и действий HTTP.
Runtime.Backend.HttpOperation.DefaultRetryMaximumInterval 01:00:00
(1 час)
Задает максимальный интервал повторных попыток для триггеров и действий HTTP.
Runtime.Backend.HttpOperation.DefaultRetryMinimumInterval 00:00:05
(5 с)
Задает минимальный интервал повторных попыток для триггеров и действий HTTP.
Runtime.Backend.HttpOperation.MaxContentSize 104857600 байт Задает максимальный размер запроса в байтах только для действий HTTP, а не триггеров. Дополнительные сведения см. в статье Ограничения.
Runtime.Backend.HttpOperation.RequestTimeout 00:03:45
(3 мин и 45 с)

Примечание. Значение по умолчанию также является максимальным.
Задает значение времени ожидания запроса для триггеров и действий HTTP.

Встроенные операции веб-перехватчика HTTP

Setting Значение по умолчанию Description
Runtime.Backend.HttpWebhookOperation.DefaultRetryCount 4 повторов Задает количество повторных попыток по умолчанию для триггеров и действий HTTP веб-перехватчика.
Runtime.Backend.HttpWebhookOperation.DefaultRetryInterval 00:00:07
(7 с)
Устанавливает интервал повторных попыток по умолчанию для триггеров и действий HTTP веб-перехватчика.
Runtime.Backend.HttpWebhookOperation.DefaultRetryMaximumInterval 01:00:00
(1 час)
Устанавливает максимальный интервал между повторными попытками для триггеров и действий вебхуков HTTP.
Runtime.Backend.HttpWebhookOperation.DefaultRetryMinimumInterval 00:00:05
(5 с)
Задает минимальный интервал повторной попытки для триггеров и действий вебхука HTTP.
Runtime.Backend.HttpWebhookOperation.DefaultWakeUpInterval 01:00:00
(1 час)
Задает интервал между пробуждениями по умолчанию для заданий, связанных с триггерами и действиями веб-перехватчика HTTP.
Runtime.Backend.HttpWebhookOperation.MaxContentSize 104857600 байт Задает максимальный размер запроса в байтах только для действий веб-перехватчика HTTP, а не триггеров. Дополнительные сведения см. в статье Ограничения.
Runtime.Backend.HttpWebhookOperation.RequestTimeout 00:02:00
(2 мин)
Задает значение времени ожидания запроса для триггеров и действий HTTP веб-перехватчика.

Встроенные операции в хранилище Azure

Хранилище данных типа BLOB

Setting Значение по умолчанию Description
Microsoft.Azure.Workflows.ContentStorage.RequestOptionsThreadCount None Устанавливает число потоков для операций отправки и скачивания blob-объектов. Этот параметр можно использовать, чтобы принудить среду выполнения Azure Logic Apps для использования нескольких потоков при отправке и скачивании содержимого из входных и выходных данных операций.
Runtime.ContentStorage.RequestOptionsDeltaBackoff 00:00:02
(2 с)
Задает интервал задержки между повторными попытками отправки в хранилище BLOB-объектов.
Runtime.ContentStorage.RequestOptionsMaximumAttempts 4 повторов Устанавливает максимальное количество попыток повторной отправки данных в хранилище таблиц и очередей.
Runtime.ContentStorage.RequestOptionsMaximumExecutionTime 00:02:00
(2 мин)
Задает значение времени ожидания для операций, включая повторные попытки, при выполнении запросов к BLOB-объектам в среде выполнения Azure Logic Apps.
Runtime.ContentStorage.RequestOptionsServerTimeout 00:00:30
(30 с)
Задает значение времени ожидания для запросов блобов из среды выполнения Azure Logic Apps.

Хранилище данных таблиц и очередей

Setting Значение по умолчанию Description
Runtime.DataStorage.RequestOptionsDeltaBackoff 00:00:02
(2 с)
Задает интервал задержки между повторными попытками отправки в хранилище таблиц и очередей.
Runtime.DataStorage.RequestOptionsMaximumAttempts 4 повторов Устанавливает максимальное количество попыток повторной отправки данных в хранилище таблиц и очередей.
Runtime.DataStorage.RequestOptionsMaximumExecutionTime 00:00:45
(45 с)
Задает значение тайм-аута выполнения операций, включая повторные попытки, для запросов к таблицам и очередям, осуществляемых из среды выполнения Azure Logic Apps.
Runtime.DataStorage.RequestOptionsServerTimeout 00:00:16
(16 с)
Устанавливает значение времени ожидания для запросов, связанных с хранилищем таблиц и очередей, поступающих из среды выполнения Azure Logic Apps.

Общий доступ к файлам

Setting Значение по умолчанию Description
ServiceProviders.AzureFile.MaxFileSizeInBytes 150000000 байт Задает максимальный размер файла в байтах для общей папки Azure.

Встроенные операции Функций Azure

Setting Значение по умолчанию Description
Runtime.Backend.FunctionOperation.RequestTimeout 00:03:45
(3 минуты и 45 секунд)
Задает значение времени ожидания запроса для действий Функций Azure.
Runtime.Backend.FunctionOperation.MaxContentSize 104857600 байт Задает максимальный размер запроса в байтах для действий Функций Azure. Дополнительные сведения см. в статье Ограничения.
Runtime.Backend.FunctionOperation.DefaultRetryCount 4 повторов Задает число повторных попыток по умолчанию для действий Функций Azure.
Runtime.Backend.FunctionOperation.DefaultRetryInterval 00:00:07
(7 с)
Задает интервал между повторными попытками по умолчанию для действий Функций Azure.
Runtime.Backend.FunctionOperation.DefaultRetryMaximumInterval 01:00:00
(1 час)
Задает максимальный интервал между повторными попытками для действий Функций Azure.
Runtime.Backend.FunctionOperation.DefaultRetryMinimumInterval 00:00:05
(5 с)
Задает минимальный интервал между повторными попытками для действий Функций Azure.

Встроенные операции Служебной шины Azure

Setting Значение по умолчанию Description
ServiceProviders.ServiceBus.MessageSenderOperationTimeout 00:01:00
(1 мин)
Задает время ожидания для отправки сообщений с использованием встроенной операции Service Bus.
Runtime.ServiceProviders.ServiceBus.MessageSenderPoolSizePerProcessorCount 64 отправители сообщений Задает количество отправителей сообщений Служебной шины Azure в расчете на ядро процессора, используемое в пуле отправителей сообщений.

Встроенные операции SFTP

Setting Значение по умолчанию Description
Runtime.ServiceProviders.Sftp.MaxFileSizeInBytes 2147483648 байт Задает максимальный размер файла в байтах для действия Get file content (V2).
Runtime.ServiceProviders.Sftp.MaximumFileSizeToReadInBytes 209715200 байт Задает максимальный размер файла в байтах для действия получения содержимого файла. Убедитесь, что это значение не превышает размер памяти, доступный для ссылки, так как это действие считывает содержимое файла в памяти.

Управляемые операции соединителя

Setting Значение по умолчанию Description
Runtime.Backend.ApiConnectionOperation.RequestTimeout 00:02:00
(2 мин)
Задает значение времени ожидания запроса для триггеров и действий управляемого API соединителя.
Runtime.Backend.ApiConnectionOperation.MaxContentSize 104857600 байт Задает максимальный размер запроса в байтах для триггеров и действий соединителя управляемого API. Дополнительные сведения см. в статье Ограничения.
Runtime.Backend.ApiConnectionOperation.DefaultRetryCount 4 повторов Задает число повторных попыток по умолчанию для триггеров и действий соединителя управляемого API.
Runtime.Backend.ApiConnectionOperation.DefaultRetryInterval 00:00:07
(7 с)
Задает интервал между повторными попытками по умолчанию для триггеров и действий соединителя управляемого API.
Runtime.Backend.ApiWebhookOperation.DefaultRetryMaximumInterval 01:00:00
(1 день)
Устанавливает максимальный интервал для повторных попыток в триггерах и действиях вебхука для управляемого API соединителя.
Runtime.Backend.ApiConnectionOperation.DefaultRetryMinimumInterval 00:00:05
(5 с)
Задает минимальный интервал повторных попыток для триггеров и действий управляемого API-коннектора.
Runtime.Backend.ApiWebhookOperation.DefaultWakeUpInterval 01:00:00
(1 день)
Задает интервал пробуждения по умолчанию для заданий, связанных с триггерами и действиями веб-перехватчика соединителя управляемого API.

Политика повторных попыток для всех остальных операций

Setting Значение по умолчанию Description
Runtime.ScaleMonitor.MaxPollingLatency 00:00:30
(30 с)
Задает максимальную задержку при опросе в целях масштабирования среды выполнения.
Runtime.Backend.Operation.MaximumRetryCount 90 повторов Задает максимальное количество повторных попыток в определении политики повтора для операции рабочего процесса.
Runtime.Backend.Operation.MaximumRetryInterval 01:00:00:01
(1 день и 1 секунда)
Задает максимальный интервал в определении политики повтора для операции рабочего процесса.
Runtime.Backend.Operation.MinimumRetryInterval 00:00:05
(5 с)
Задает минимальный интервал в определении политики повтора для операции рабочего процесса.

Limitations

Максимальный размер содержимого:

По умолчанию встроенные триггеры, такие как HTTP или запрос, ограничены размером сообщения, описанным в разделе "Ограничения и справочник по конфигурации" — "Сообщения". Чтобы обрабатывать файлы, превышающие предел, попробуйте отправить содержимое в виде большого двоичного объекта в Хранилище BLOB-объектов Azure, а затем получить содержимое с помощью соединителя BLOB-объектов Azure.

Управление параметрами узла — host.json

Можно добавлять, обновлять и удалять параметры узла, определяющие параметры конфигурации среды выполнения и значения, применяемые ко всем рабочим процессам в этом приложении логики. Например, это могут быть значения по умолчанию для пропускной способности, емкости, размера данных и т. д., которые не зависят от того, выполняются ли приложения локально или в Azure. Сведения о параметрах узла, относящихся к приложениям логики, см. в статье "Справочник по параметрам узла" — host.json.

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

  1. В поле поиска на портале Azure найдите и откройте приложение логики.

  2. В меню ресурсов в разделе "Средства разработки" выберите "Дополнительные средства".

  3. В области Расширенные инструменты выберите Перейти, чтобы открыть среду Kudu для приложения логики.

  4. На панели инструментов Kudu откройте меню Debug console (Консоль отладки) и выберите CMD.

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

  5. Перейдите по следующему пути к папке wwwroot: ...\home\site\wwwroot

  6. Над окном консоли в таблице каталогов рядом с файлом host.json нажмите кнопку "Изменить".

  7. После открытия файл host.json просмотрите все параметры узла, которые ранее были добавлены для логического приложения.

    См. "Справочник по параметрам узла — host.json" для получения дополнительных сведений о параметрах узла.

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

  1. Перед добавлением или изменением параметров остановите приложение логики на портале Microsoft Azure.

    1. В меню ресурсов выберите "Обзор".

    2. На панели инструментов области Обзор выберите Остановить.

  2. Если файлhost.json уже открыт, вернитесь к файлуhost.json . В противном случае выполните описанные выше действия, чтобы открыть файлhost.json .

  3. В объекте extensionBundle добавьте объект extensions, который включает в себя объекты workflow и settings. Например, вот так.

    {
       "version": "2.0",
       "extensionBundle": {
          "id": "Microsoft.Azure.Functions.ExtensionBundle",
          "version": "[1.*, 2.0.0)"
       },
       "extensions": {
          "workflow": {
             "settings": {
             }
          }
       }
    }
    
  4. В объекте settings добавьте плоский список с параметрами узла, которые планируется использовать для всех рабочих процессов в приложении логики, будь то выполняемые локально рабочие процессы или рабочие процессы в Azure. Например, вот так.

    {
       "version": "2.0",
       "extensionBundle": {
          "id": "Microsoft.Azure.Functions.ExtensionBundle",
          "version": "[1.*, 2.0.0)"
       },
       "extensions": {
          "workflow": {
             "settings": {
                "Runtime.Trigger.MaximumWaitingRuns": "100"
             }
          }
       }
    }
    
  5. По завершении не забудьте нажать кнопку "Сохранить".

  6. Теперь перезапустите приложение логики. Вернитесь на страницу обзора приложения логики и выберите "Перезапустить".