Condividi tramite


Modificare le impostazioni dell'host e dell'app per le app per la logica Standard in App per la logica di Azure a tenant singolo

Si applica: App per la logica di Azure (Standard)

In App per la logica di Azure a tenant singolo, le impostazioni dell'app per un'app per la logica Standard specificano le opzioni di configurazione globali che influiscono su tutti i flussi di lavoro in tale app per la logica. Tuttavia, queste impostazioni si applicano solo quando questi flussi di lavoro vengono eseguiti nell'ambiente di sviluppo locale. I flussi di lavoro in esecuzione in locale possono accedere a queste impostazioni dell'app come variabili di ambiente locali, usate dagli strumenti di sviluppo locali per i valori che spesso possono cambiare tra gli ambienti. Ad esempio, questi valori possono contenere stringhe di connessione. Quando si esegue la distribuzione in Azure, le impostazioni dell'app vengono ignorate e non sono incluse nella distribuzione.

L'app per la logica include anche impostazioni host, che specificano le impostazioni di configurazione e i valori di runtime applicabili a tutti i flussi di lavoro in tale app per la logica, ad esempio valori predefiniti per velocità effettiva, capacità, dimensioni dei dati e così via, sia che vengano eseguiti in locale o in Azure.

Impostazioni, parametri e distribuzione dell'app

Nelle App per la logica di Azure multi-tenant, la distribuzione dipende dai modelli di Azure Resource Manager (modelli ARM), che combinano e gestiscono il provisioning delle risorse sia per le app per la logica sia per l'infrastruttura. Questa progettazione rappresenta una sfida quando è necessario gestire le variabili di ambiente per le app per la logica in vari ambienti di sviluppo, test e produzione. Tutti gli elementi in un modello di Resource Manager sono definiti in fase di distribuzione. Se è necessario modificare solo una singola variabile, è necessario ridistribuire tutto.

Nelle App per la logica di Azure a tenant singolo, la distribuzione diventa più semplice perché è possibile separare il provisioning delle risorse tra app e infrastruttura. È possibile usare parametri per astrarre i valori che potrebbero cambiare tra gli ambienti. Definendo i parametri da usare nei flussi di lavoro, è prima possibile concentrarsi sulla progettazione dei flussi di lavoro e quindi inserire le variabili specifiche dell'ambiente in un secondo momento. È possibile chiamare e fare riferimento alle variabili di ambiente in fase di esecuzione usando le impostazioni e i parametri dell'app. In questo modo, non è necessario ridistribuire come spesso.

Le Impostazioni dell'app si integrano con Azure Key Vault. È possibile fare riferimento direttamente a stringhe sicure, ad esempio stringhe di connessione e chiavi. Analogamente ai modelli di Azure Resource Manager (ARM), in cui è possibile definire le variabili di ambiente in fase di distribuzione, è possibile indicare le impostazioni dell'app all'interno della definizione del flusso di lavoro dell'app per la logica. È quindi possibile acquisire valori di infrastruttura generati dinamicamente, ad esempio endpoint di connessione, stringhe di archiviazione e altri. Tuttavia, le impostazioni dell'app hanno limitazioni di dimensioni e non è possibile farvi riferimento da determinate aree in App per la logica di Azure.

Nota

Se si usa Key Vault, assicurarsi di archiviare solo segreti, ad esempio password, credenziali e certificati. In un flusso di lavoro dell'app per la logica non usare Key Vault per archiviare valori non segreti, ad esempio i percorsi URL, che la finestra di progettazione del flusso di lavoro deve effettuare chiamate. La finestra di progettazione non può dereferenziare un'impostazione dell'app che fa riferimento a un tipo di risorsa Key Vault, che genera un errore e una chiamata non riuscita. Per i valori non segreti, archiviarli direttamente nelle impostazioni dell'app.

Per altre informazioni sulla configurazione delle app per la logica per distribuzioni, vedere la documentazione seguente:

Struttura del progetto di Visual Studio Code

In Visual Studio Code il progetto di app per la logica ha uno dei tipi seguenti:

  • Basato su bundle di estensioni (Node.js), ovvero il tipo predefinito
  • Basato su pacchetti NuGet (.NET), che è possibile convertire dal tipo predefinito

In base a questi tipi, il progetto include cartelle e file leggermente diversi. Un progetto basato su NuGet include una cartella .bin che contiene pacchetti e altri file di libreria. Un progetto basato su bundle non include la cartella .bin e altri file. Alcuni scenari richiedono l'esecuzione di un progetto basato su NuGet per l'app, ad esempio quando si vogliono sviluppare ed eseguire operazioni predefinite personalizzate. Per altre informazioni sulla conversione del progetto per l'uso di NuGet, vedere Abilitare la creazione di connettori predefiniti.

Per il progetto predefinito basato su bundle, il progetto ha una cartella e una struttura di file simile all'esempio seguente:

MyBundleBasedLogicAppProjectName
| .vscode
| Artifacts
  || Maps 
     ||| MapName1
     ||| ...
  || Schemas
     ||| SchemaName1
     ||| ...
| WorkflowName1
  || workflow.json
  || ...
| WorkflowName2
  || workflow.json
  || ...
| workflow-designtime
| .funcignore
| connections.json
| host.json
| local.settings.json

A livello radice del progetto, è possibile trovare i file e le cartelle seguenti con altri elementi:

Nome File o cartella Descrizione
.vscode Cartella Contiene file di impostazioni correlati a Visual Studio Code, ad esempio file extensions.json, launch.json, settings.jsone tasks.json.
Elementi Cartella Contiene elementi dell'account di integrazione definiti e usati nei flussi di lavoro che supportano scenari business-to-business (B2B). Ad esempio, la struttura di esempio include mappe e schemi per le operazioni di trasformazione e convalida XML.
<WorkflowName> Cartella Per ogni flusso di lavoro, la cartella <WorkflowName> include un file workflow.json che contiene la definizione JSON sottostante del flusso di lavoro.
fase di progettazione del flusso di lavoro Cartella Contiene i file di impostazioni correlati all'ambiente di sviluppo.
.funcignore file Contiene informazioni correlate all' Azure Functions Core Tools.
connections.json file Contiene i metadati, gli endpoint e le chiavi per tutte le connessioni gestite e le funzioni di Azure usate dai flussi di lavoro.

Importante: per usare connessioni e funzioni diverse per ogni ambiente, assicurarsi di parametrizzare questo file connections.json e aggiornare gli endpoint.
host.json file Contiene impostazioni e valori di configurazione specifici del runtime, ad esempio i limiti predefiniti per la piattaforma app per la logica di Azure a tenant singolo, le app per la logica, i flussi di lavoro, i trigger e le azioni. A livello radice del progetto dell'app per la logica, il file di metadati host.json contiene le impostazioni di configurazione e i valori predefiniti che tutti i flussi di lavoro nella stessa app per la logica usano durante l'esecuzione, sia in locale sia in Azure.

Nota: quando si crea l'app per la logica, Visual Studio Code crea un file di backup host.snapshot.*.json nel contenitore di archiviazione. Se si elimina l'app per la logica, questo file di backup non viene eliminato. Se si crea un'altra app per la logica con lo stesso nome, viene creato un altro file di snapshot. È possibile avere fino a 10 snapshot per la stessa app per la logica. Se si supera questo limite, verrà visualizzato l'errore seguente:

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

Per risolvere questo errore, eliminare i file di snapshot aggiuntivi dal contenitore di archiviazione.
local.settings.json file Contiene impostazioni dell'app, stringhe di connessione e altre impostazioni usate dai flussi di lavoro durante l'esecuzione in locale. In altre parole, queste impostazioni e valori si applicano solo quando si eseguono i progetti nell'ambiente di sviluppo locale. Durante la distribuzione in Azure, il file e le impostazioni vengono ignorati e non sono inclusi nella distribuzione.

Questo file archivia le impostazioni e i valori come variabili di ambiente locali usati dagli strumenti di sviluppo locali come valori di appSettings. È possibile chiamare e fare riferimento a queste variabili di ambiente sia in fase di runtime che in fase di distribuzione usando le impostazioni e i parametri dell’app.

Importante: il file local.settings.json può contenere segreti, quindi assicurarsi di escludere anche questo file dal controllo del codice sorgente del progetto.

Informazioni di riferimento sulle impostazioni dell'app - local.settings.json

In Visual Studio Code, a livello radice del progetto dell'app per la logica, il file local.settings.json contiene opzioni di configurazione globali che influiscono su tutti i flussi di lavoro in tale app per la logica durante l'esecuzione nell'ambiente di sviluppo locale. Quando i flussi di lavoro vengono eseguiti in locale, queste impostazioni sono accessibili come variabili di ambiente locali e i relativi valori possono spesso variare tra i vari ambienti in cui vengono eseguiti i flussi di lavoro. Per visualizzare e gestire queste impostazioni, vedere Gestire le impostazioni dell'app - local.settings.json.

Le Impostazioni delle app in App per la logica di Azure funzionano in modo analogo alle impostazioni dell'app in Funzioni di Azure o in App Web di Azure. Se in precedenza hai usato questi altri servizi, potresti avere già familiarità con le impostazioni dell'app. Per altre informazioni, vedere Informazioni di riferimento sulle impostazioni dell'app per Funzioni di Azure e Usare Azure Functions Core Tools - file delle impostazioni locali.

Affinché il flusso di lavoro venga eseguito correttamente, sono necessarie alcune impostazioni dell'app.

Impostazione Obbligatorio Valore Descrizione
APP_KIND workflowApp Obbligatoria per impostare il tipo di app per la risorsa dell'app per la logica Standard. Il valore deve essere impostato su workflowApp.

Nota: in alcuni scenari, questa impostazione dell'app potrebbe non essere presente, ad esempio a causa dell'automazione con i modelli di Azure Resource Manager o altri scenari in cui l'impostazione non è inclusa. Se alcune azioni non funzionano, ad esempio l'azione Esegui codice JavaScript o se il flusso di lavoro smette di funzionare, verificare che l'impostazione dell'app APP_KIND esista e sia impostata su workflowApp.
AZURE_AUTHORITY_HOST No None Imposta l'autorità predefinita dell'app per la logica Standard da usare per l'autenticazione OAuth.
AzureWebJobsStorage None Obbligatoria per impostare la stringa di connessione per un account di archiviazione di Azure. Per altre informazioni, vedere AzureWebJobsStorage.
FUNCTINONS_EXTENSION_VERSION ~4 Obbligatoria per impostare la versione di Funzioni di Azure. Per altre informazioni, vedere FUNCTIONS_EXTENSION_VERSION.
FUNCTIONS_WORKER_RUNTIME dotnet Obbligatoria per impostare il runtime del ruolo di lavoro per il linguaggio da usare con le risorse e i flussi di lavoro dell'app per la logica.

Nota: il valore di questa impostazione è stato impostato in precedenza su node, ma ora il valore necessario è dotnet per tutte le app per la logica Standard nuove ed esistenti distribuite. Questa modifica non dovrebbe influire sul runtime del flusso di lavoro, quindi tutto dovrebbe funzionare allo stesso modo di prima.

Per altre informazioni, vedere FUNCTIONS_WORKER_RUNTIME.
ServiceProviders.Sftp.FileUploadBufferTimeForTrigger No 00:00:20
(20 secondi)
Imposta il tempo del buffer per ignorare i file con un timestamp dell'ultima modifica maggiore dell'ora corrente. Questa impostazione è utile quando le scritture di file di grandi dimensioni richiedono molto tempo ed evita di recuperare i dati per un file scritto parzialmente.
ServiceProviders.Sftp.OperationTimeout No 00:02:00
(2 min)
Imposta il tempo di attesa prima del timeout per qualsiasi operazione.
ServiceProviders.Sftp.ServerAliveInterval No 00:30:00
(30 min)
Invia un messaggio "keep alive" per mantenere attiva la connessione SSH se non si verifica alcun scambio di dati con il server durante il periodo specificato.
ServiceProviders.Sftp.SftpConnectionPoolSize No 2 connessioni Imposta il numero di connessioni che ogni processore può memorizzare nella cache. Il numero totale di connessioni che è possibile memorizzare nella cache è ProcessorCount moltiplicato per il valore dell'impostazione.
ServiceProviders.MaximumAllowedTriggerStateSizeInKB No 10 KB, ovvero circa 1.000 file Imposta le dimensioni dell'entità di stato del trigger in kilobyte, che è proporzionale al numero di file nella cartella monitorata e viene usato per rilevare i file. Se il numero di file supera 1.000, aumentare questo valore.
ServiceProviders.Sql.QueryTimeout No 00:02:00
(2 min)
Imposta il valore di timeout della richiesta per le operazioni del provider di servizi SQL.
WEBSITE_CONTENTSHARE Dinamico Obbligatoria per impostare il nome per la condivisione file usata da Funzioni di Azure per archiviare il codice dell'app per le funzioni e i file di configurazione, viene usata con WEBSITE_CONTENTAZUREFILECONNECTIONSTRING. L’impostazione predefinita è una stringa univoca generata dal runtime. Per altre informazioni, vedere WEBSITE_CONTENTSHARE.
WEBSITE_LOAD_ROOT_CERTIFICATES No None Imposta le identificazioni personali per i certificati radice da considerare attendibili.
Workflows.Connection.AuthenticationAudience No None Imposta il gruppo di destinatari per l'autenticazione di una connessione gestita (ospitata in Azure).
Workflows.CustomHostName No None Imposta il nome host da usare per gli URL di input e flusso di lavoro, ad esempio "logic.contoso.com". Per informazioni su come configurare un nome DNS personalizzato, vedere Eseguire il mapping di un nome DNS personalizzato esistente al Servizio app di Azure e Proteggere un nome DNS personalizzato con un'associazione TLS/SSL nel Servizio app di Azure.
Workflows.<workflowName>.FlowState No None Imposta lo stato per <workflowName>.
Workflows.<workflowName>.RuntimeConfiguration.RetentionInDays No None Imposta la quantità di tempo in giorni per mantenere la cronologia di esecuzione per <workflowName>.
Workflows.RuntimeConfiguration.RetentionInDays No 90 giorni Imposta la quantità di tempo in giorni per mantenere la cronologia di esecuzione del flusso di lavoro dopo l'avvio di un'esecuzione.
Workflows.WebhookRedirectHostUri No None Imposta il nome host da usare per gli URL di callback del webhook.

Gestire le impostazioni dell'app - local.settings.json

Per aggiungere, aggiornare o eliminare impostazioni dell'app, selezionare e rivedere le sezioni seguenti per Portale di Azure, Visual Studio Code, interfaccia della riga di comando di Azure o modello ARM (Bicep). Per impostazioni dell'app specifiche per le app per la logica, vedere la guida di riferimento per le impostazioni dell'app disponibili - local.settings.json.

Visualizzare le impostazioni dell'app nel portale
  1. Nella casella di ricerca Portale di Azure trovare e aprire l'app per la logica.

  2. Nel menu dell'app per la logica, in Impostazioni selezionare Variabili di ambiente.

  3. Nella pagina Variabili di ambiente, nella scheda Impostazioni app, rivedere le impostazioni dell'app per l'app per la logica.

    Per altre informazioni su queste impostazioni, vedere la guida di riferimento per le impostazioni dell'app disponibili - local.settings.json.

  4. Per visualizzare tutti i valori, selezionare Mostra valori. In alternativa, per visualizzare un singolo valore, nella colonna Valore, accanto al valore, selezionare l'"occhio".

Aggiungere un'impostazione dell'app nel portale
  1. Nella scheda Impostazioni app, nella parte inferiore dell'elenco, nella colonna Nome immettere la chiave o il nome per la nuova impostazione.

  2. Per Valore, immettere il valore per la nuova impostazione.

  3. Quando si è pronti per creare la nuova coppia chiave-valore, selezionare Applica.

    Screenshot che mostra il portale di Azure con la pagina delle impostazioni dell'app e i valori per una risorsa dell'app per la logica Standard.

Informazioni di riferimento per le impostazioni host - host.json

In Visual Studio Code, a livello radice del progetto dell'app per la logica, il file di metadati host.json contiene le impostazioni di runtime e i valori predefiniti che si applicano a tutti i flussi di lavoro in una risorsa dell'app per la logica usano durante l'esecuzione, in locale o in Azure. Per visualizzare e gestire queste impostazioni, vedere Gestire le impostazioni host - host.json. È anche possibile trovare informazioni sui limiti correlati nella documentazione Limiti e configurazione per App per la logica di Azure.

Velocità effettiva dell'orchestrazione dei processi

Queste impostazioni influiscono sulla velocità effettiva e sulla capacità per app per la logica di Azure a tenant singolo per eseguire operazioni del flusso di lavoro.

Impostazione Valore predefinito Descrizione
Jobs.BackgroundJobs.DispatchingWorkersPulseInterval 00:00:01
(1 sec)
Imposta l'intervallo per i dispatcher di processo per eseguire il polling della coda di processi quando il polling precedente non restituisce processi. I dispatcher di processo eseguano immediatamente il polling della coda quando il polling precedente restituisce un processo.
Jobs.BackgroundJobs.NumPartitionsInJobDefinitionsTable 4 partizioni di processo Imposta il numero di partizioni di processo nella tabella di definizione del processo. Questo valore controlla la velocità effettiva di esecuzione interessata dai limiti di archiviazione delle partizioni.
Jobs.BackgroundJobs.NumPartitionsInJobTriggersQueue 1 coda di processi Imposta il numero di code di processi monitorate dai dispatcher di processo per i processi da elaborare. Questo valore influisce anche sul numero di partizioni di archiviazione in cui esistono code di processi.
Jobs.BackgroundJobs.NumWorkersPerProcessorCount 192 istanze del ruolo di lavoro Dispatcher Imposta il numero di istanze del ruolo di lavoro del dispatcher o dei dispatcher di processi in modo che abbiano per ogni core del processore. Questo valore influisce sul numero di esecuzioni del flusso di lavoro per core.
Jobs.BackgroundJobs.StatelessNumWorkersPerProcessorCount 192 istanze del ruolo di lavoro Dispatcher Imposta il numero di istanze del ruolo di lavoro del dispatcher o dei dispatcher di processi in modo che abbiano per ogni core del processore, per esecuzione senza stato. Questo valore influisce sul numero di azioni simultanee del flusso di lavoro elaborate per esecuzione.

Entrambe le impostazioni seguenti vengono usate per arrestare manualmente ed eliminare immediatamente i flussi di lavoro specificati nell'app per la logica Standard.

Nota

Usare queste impostazioni con cautela e solo in ambienti non di produzione, ad esempio ambienti di test di carico o prestazioni, perché non è possibile annullare o ripristinare da queste operazioni.

Impostazione Valore predefinito Descrizione
Jobs.CleanupJobPartitionPrefixes Nessuna Elimina immediatamente tutti i processi di esecuzione per i flussi di lavoro specificati.
Jobs.SuspendedJobPartitionPartitionPrefixes None Arresta i processi di esecuzione per i flussi di lavoro specificati.

Nell'esempio seguente viene illustrata la sintassi per queste impostazioni in cui ogni ID del flusso di lavoro è seguito da due punti (:) e separati da un punto e virgola (;):

"Jobs.CleanupJobPartitionPrefixes": "<workflow-ID-1>:; <workflow-ID-2:",
"Jobs.SuspendedJobPartitionPrefixes": "<workflow-ID-1>:; <workflow-ID-2>:"

Trigger basati su ricorrenza

Impostazione Valore predefinito Descrizione
Microsoft.Azure.Workflows.ServiceProviders.MaximumAllowedTriggerStateSizeInKB 1 KB Imposta le dimensioni massime consentite dello stato del trigger per i trigger basati su ricorrenza, ad esempio il trigger SFTP predefinito. Lo stato del trigger rende persistenti i dati in più trigger basati sulla ricorrenza del provider di servizi.

Importante: in base alle dimensioni di archiviazione, evitare di impostare questo valore troppo alto, che può influire negativamente sull'archiviazione e sulle prestazioni.

Concorrenza di trigger

Le impostazioni seguenti funzionano solo per i flussi di lavoro che iniziano con un trigger basato su ricorrenza per i connettori predefiniti basati su provider di servizi. Per un flusso di lavoro che inizia con un trigger basato su funzione, è possibile provare a configurare l'invio in batch, se supportato. Tuttavia, l'invio in batch non è sempre la soluzione corretta. Ad esempio, con i trigger del bus di servizio di Azure, un batch potrebbe contenere messaggi oltre la durata del blocco. Di conseguenza, qualsiasi azione, ad esempio completa o abbandonata, ha esito negativo su tali messaggi.

Impostazione Valore predefinito Descrizione
Runtime.Trigger.MaximumRunConcurrency 100 esecuzioni Imposta il numero massimo di esecuzioni simultanee che un trigger può avviare. Questo valore viene visualizzato nella definizione di concorrenza del trigger.
Runtime.Trigger.MaximumWaitingRuns 200 esecuzioni Imposta il numero massimo di esecuzioni che possono attendere dopo le esecuzioni simultanee che soddisfano il valore massimo. Questo valore viene visualizzato nella definizione di concorrenza del trigger. Per altre informazioni, vedere Modificare il limite di esecuzioni in attesa.

Durata dell'esecuzione e conservazione della cronologia

Impostazione Valore predefinito Descrizione
Runtime.Backend.FlowRunTimeout 90.00:00:00
(90 giorni)
Imposta la quantità di tempo per cui un flusso di lavoro può continuare l'esecuzione prima di forzare un timeout. Il valore minimo per questa impostazione è 7 giorni.

Importante: assicurarsi che questo valore sia minore o uguale al valore per l'impostazione dell'app denominata Workflows.RuntimeConfiguration.RetentionInDays. In caso contrario, le cronologie di esecuzione possono essere eliminate prima del completamento dei processi associati.
Runtime.FlowMaintenanceJob.RetentionCooldownInterval 7.00:00:00
(7 giorni)
Imposta la quantità di tempo in giorni come intervallo tra il momento in cui verificare e eliminare la cronologia di esecuzione che non si vuole più mantenere.

Esegui azioni

Impostazione Valore predefinito Descrizione
Runtime.FlowRunRetryableActionJobCallback.ActionJobExecutionTimeout 00:10:00
(10 minuti)
Imposta la quantità di tempo per l'esecuzione di un processo di azione del flusso di lavoro prima del timeout e del nuovo tentativo.

Input e output

Impostazione Valore predefinito Descrizione
Microsoft.Azure.Workflows.TemplateLimits.InputParametersLimit 50 Modificare il limite predefinito per i parametri del flusso di lavoro tra ambienti fino a 500 per le app per la logica Standard create esportando app per la logica A consumo.
Runtime.ContentLink.MaximumContentSizeInBytes 104857600 byte Imposta la dimensione massima in byte che un input o un output può avere in un singolo trigger o azione.
Runtime.FlowRunActionJob.MaximumActionResultSize 209715200 byte Imposta le dimensioni massime in byte che gli input e gli output combinati possono avere in una singola azione.

Impaginazione

Impostazione Valore predefinito Descrizione
Runtime.FlowRunRetryableActionJobCallback.MaximumPageCount 1000 pagine Quando la paginazione è supportata e abilitata in un'operazione, imposta il numero massimo di pagine da restituire o elaborare in fase di esecuzione.

Suddivisione in blocchi

Impostazione Valore predefinito Descrizione
Runtime.FlowRunRetryableActionJobCallback.MaximumContentLengthInBytesForPartialContent 1073741824 byte Quando la suddivisione in blocchi è supportata e abilitata in un'operazione, imposta le dimensioni massime in byte per il contenuto scaricato o caricato.
Runtime.FlowRunRetryableActionJobCallback.MaxChunkSizeInBytes 52428800 byte Quando la suddivisione in blocchi è supportata e abilitata in un'operazione, imposta le dimensioni massime in byte per ogni blocco di contenuto.
Runtime.FlowRunRetryableActionJobCallback.MaximumRequestCountForPartialContent 1000 richieste Quando la suddivisione in blocchi è supportata e abilitata in un'operazione, imposta il numero massimo di richieste che un'esecuzione dell'azione può effettuare per scaricare il contenuto.

Archiviare il contenuto inline o usare BLOB

Impostazione Valore predefinito Descrizione
Runtime.FlowRunEngine.ForeachMaximumItemsForContentInlining 20 elementi Quando viene eseguito un ciclo For each, il valore di ogni elemento viene archiviato inline con altri metadati nell'archivio tabelle o separatamente nell'archivio BLOB. Imposta il numero di elementi da archiviare inline con altri metadati.
Runtime.FlowRunRetryableActionJobCallback.MaximumPagesForContentInlining 20 pagine Imposta il numero massimo di pagine da archiviare come contenuto inline nell'archivio tabelle prima di archiviare nell'archivio BLOB.
Runtime.FlowTriggerSplitOnJob.MaximumItemsForContentInlining 40 elementi Quando l'impostazione SplitOn suddivide gli elementi della matrice in più istanze del flusso di lavoro, il valore di ogni elemento viene archiviato inline con altri metadati nell'archiviazione tabelle o separatamente nell'archiviazione BLOB. Imposta il numero di elementi da archiviare inline.
Runtime.ScaleUnit.MaximumCharactersForContentInlining 8192 caratteri Imposta il numero massimo di caratteri di input e output dell'operazione da archiviare inline nell'archivio tabelle prima di archiviare nell'archivio BLOB.

Per ogni ciclo

Impostazione Valore predefinito Descrizione
Runtime.Backend.FlowDefaultForeachItemsLimit 100000 elementi dell'array Per un flusso di lavoro con stato, imposta il numero massimo di elementi della matrice da elaborare in un ciclo For each.
Runtime.Backend.FlowDefaultSplitOnItemsLimit 100000 elementi dell'array Imposta il numero massimo di elementi della matrice per eseguire il debatch o suddividerlo in più istanze del flusso di lavoro in base all'impostazione SplitOn.
Runtime.Backend.ForeachDefaultDegreeOfParallelism 20 iterazioni Imposta il numero predefinito di iterazioni simultanee, o grado di parallelismo, in un ciclo For each. Per eseguire in sequenza, impostare il valore su 1.
Runtime.Backend.Stateless.FlowDefaultForeachItemsLimit 100 elementi Per un flusso di lavoro senza stato, imposta il numero massimo di elementi della matrice da elaborare in un ciclo For each.

Fino a cicli

Impostazione Valore predefinito Descrizione
Runtime.Backend.MaximumUntilLimitCount 5000 iterazioni Per un flusso di lavoro con stato, imposta il numero massimo possibile per la proprietà Count in un'azione Until.
Runtime.Backend.Stateless.FlowRunTimeout 00:05:00
(5 min)
Imposta il tempo di attesa massimo per un ciclo Until in un flusso di lavoro senza stato.
Runtime.Backend.Stateless.MaximumUntilLimitCount 100 iterazioni Per un flusso di lavoro senza stato, imposta il numero massimo possibile per la proprietà Count in un'azione Until.

Variabili

Impostazione Valore predefinito Descrizione
Runtime.Backend.DefaultAppendArrayItemsLimit 100000 elementi dell'array Imposta il numero massimo di elementi in una variabile con il tipo array.
Runtime.Backend.VariableOperation.MaximumStatelessVariableSize Flusso di lavoro senza stato: 1024 caratteri Imposta la dimensione massima in caratteri per il contenuto che una variabile può archiviare quando usata in un flusso di lavoro senza stato.
Runtime.Backend.VariableOperation.MaximumVariableSize Flusso di lavoro con stato: 104857600 caratteri Imposta la dimensione massima in caratteri per il contenuto che una variabile può archiviare quando usata in un flusso di lavoro con stato.

Operazioni HTTP predefinite

Impostazione Valore predefinito Descrizione
Runtime.Backend.HttpOperation.DefaultRetryCount 4 tentativi Imposta il numero di tentativi predefinito per trigger e azioni HTTP.
Runtime.Backend.HttpOperation.DefaultRetryInterval 00:00:07
(7 sec)
Imposta l'intervallo di ripetizione dei tentativi predefinito per trigger e azioni HTTP.
Runtime.Backend.HttpOperation.DefaultRetryMaximumInterval 01:00:00
(1 ora)
Imposta l'intervallo massimo di tentativi per trigger e azioni HTTP.
Runtime.Backend.HttpOperation.DefaultRetryMinimumInterval 00:00:05
(5 sec)
Imposta l'intervallo minimo di ripetizione dei tentativi per i trigger e le azioni HTTP.
Runtime.Backend.HttpOperation.MaxContentSize 104857600 byte Imposta le dimensioni massime delle richieste in byte solo per le azioni HTTP, non per i trigger. Per altre informazioni, vedere: Limitazioni.
Runtime.Backend.HttpOperation.RequestTimeout 00:03:45
(3 min e 45 sec)

Nota: il valore predefinito è anche il valore massimo.
Imposta il valore di timeout della richiesta per trigger e azioni HTTP.

Operazioni webhook HTTP predefinite

Impostazione Valore predefinito Descrizione
Runtime.Backend.HttpWebhookOperation.DefaultRetryCount 4 tentativi Imposta il numero di tentativi predefinito per i trigger e le azioni webhook HTTP.
Runtime.Backend.HttpWebhookOperation.DefaultRetryInterval 00:00:07
(7 sec)
Imposta l'intervallo di ripetizione dei tentativi predefinito per i trigger e le azioni webhook HTTP.
Runtime.Backend.HttpWebhookOperation.DefaultRetryMaximumInterval 01:00:00
(1 ora)
Imposta l'intervallo massimo di tentativi per i trigger e le azioni webhook HTTP.
Runtime.Backend.HttpWebhookOperation.DefaultRetryMinimumInterval 00:00:05
(5 sec)
Imposta l'intervallo minimo di ripetizione dei tentativi per i trigger e le azioni webhook HTTP.
Runtime.Backend.HttpWebhookOperation.DefaultWakeUpInterval 01:00:00
(1 ora)
Imposta l'intervallo di riattivazione predefinito per i processi di attivazione e azione webhook HTTP.
Runtime.Backend.HttpWebhookOperation.MaxContentSize 104857600 byte Imposta le dimensioni massime delle richieste in byte solo per le azioni webhook HTTP, non i trigger. Per altre informazioni, vedere: Limitazioni.
Runtime.Backend.HttpWebhookOperation.RequestTimeout 00:02:00
(2 min)
Imposta il valore di timeout della richiesta per i trigger e le azioni webhook HTTP.

Operazioni predefinite di Archiviazione di Azure

Archiviazione BLOB

Impostazione Valore predefinito Descrizione
Microsoft.Azure.Workflows.ContentStorage.RequestOptionsThreadCount Nessuna Imposta il conteggio dei thread per le operazioni di caricamento e download di BLOB. È possibile usare questa impostazione per forzare il runtime di App per la logica di Azure a usare più thread durante il caricamento e il download del contenuto dagli input e dagli output delle azioni.
Runtime.ContentStorage.RequestOptionsDeltaBackoff 00:00:02
(2 sec)
Imposta l'intervallo di backoff tra i tentativi inviati all'archivio BLOB.
Runtime.ContentStorage.RequestOptionsMaximumAttempts 4 tentativi Imposta il numero massimo di tentativi inviati alla tabella e all'archiviazione code.
Runtime.ContentStorage.RequestOptionsMaximumExecutionTime 00:02:00
(2 min)
Imposta il valore di timeout dell'operazione, inclusi i tentativi, per le richieste BLOB dal runtime di App per la logica di Azure.
Runtime.ContentStorage.RequestOptionsServerTimeout 00:00:30
(30 sec)
Imposta il valore di timeout per le richieste BLOB dal runtime di App per la logica di Azure.

Archiviazione di tabelle e code

Impostazione Valore predefinito Descrizione
Runtime.DataStorage.RequestOptionsDeltaBackoff 00:00:02
(2 sec)
Imposta l'intervallo di backoff tra i tentativi inviati all'archiviazione tabelle e code.
Runtime.DataStorage.RequestOptionsMaximumAttempts 4 tentativi Imposta il numero massimo di tentativi inviati alla tabella e all'archiviazione code.
Runtime.DataStorage.RequestOptionsMaximumExecutionTime 00:00:45
(45 sec)
Imposta il valore di timeout dell'operazione, inclusi i tentativi, per le richieste di archiviazione tabelle e code dal runtime di App per la logica di Azure.
Runtime.DataStorage.RequestOptionsServerTimeout 00:00:16
(16 sec)
Imposta il valore di timeout per le richieste di archiviazione tabelle e code dal runtime di App per la logica di Azure.

Condivisione file

Impostazione Valore predefinito Descrizione
ServiceProviders.AzureFile.MaxFileSizeInBytes 150000000 byte Imposta la dimensione massima del file in byte per una condivisione file di Azure.

Operazioni predefinite di Funzioni di Azure

Impostazione Valore predefinito Descrizione
Runtime.Backend.FunctionOperation.RequestTimeout 00:03:45
(3 min e 45 sec)
Imposta il valore di timeout della richiesta per le azioni di Funzioni di Azure.
Runtime.Backend.FunctionOperation.MaxContentSize 104857600 byte Imposta le dimensioni massime delle richieste in byte per le azioni di Funzioni di Azure. Per altre informazioni, vedere: Limitazioni.
Runtime.Backend.FunctionOperation.DefaultRetryCount 4 tentativi Imposta il numero di tentativi predefinito per le azioni di Funzioni di Azure.
Runtime.Backend.FunctionOperation.DefaultRetryInterval 00:00:07
(7 sec)
Imposta l'intervallo di ripetizione dei tentativi predefinito per le azioni di Funzioni di Azure.
Runtime.Backend.FunctionOperation.DefaultRetryMaximumInterval 01:00:00
(1 ora)
Imposta l'intervallo massimo di tentativi per le azioni di Funzioni di Azure.
Runtime.Backend.FunctionOperation.DefaultRetryMinimumInterval 00:00:05
(5 sec)
Imposta l'intervallo minimo di ripetizione dei tentativi per le azioni di Funzioni di Azure.

Operazioni predefinite del bus di servizio di Azure

Impostazione Valore predefinito Descrizione
ServiceProviders.ServiceBus.MessageSenderOperationTimeout 00:01:00
(1 min)
Imposta il timeout per l'invio di messaggi con l'operazione predefinita del bus di servizio.
Runtime.ServiceProviders.ServiceBus.MessageSenderPoolSizePerProcessorCount 64 mittenti di messaggi Imposta il numero di mittenti di messaggi del bus di servizio di Azure per core processore da usare nel pool di mittenti di messaggi.

Operazioni SFTP predefinite

Impostazione Valore predefinito Descrizione
Runtime.ServiceProviders.Sftp.MaxFileSizeInBytes 2147483648 byte Imposta la dimensione massima del file in byte per l'azione Recupera contenuto file (V2).
Runtime.ServiceProviders.Sftp.MaximumFileSizeToReadInBytes 209715200 byte Imposta la dimensione massima del file in byte per l'azione Recupera contenuto file. Assicurarsi che questo valore non superi le dimensioni di memoria a cui è possibile fare riferimento perché questa azione legge il contenuto del file in memoria.

Operazioni del connettore gestito

Impostazione Valore predefinito Descrizione
Runtime.Backend.ApiConnectionOperation.RequestTimeout 00:02:00
(2 min)
Imposta il valore di timeout della richiesta per i trigger e le azioni del connettore API gestito.
Runtime.Backend.ApiConnectionOperation.MaxContentSize 104857600 byte Imposta le dimensioni massime delle richieste in byte per i trigger e le azioni del connettore API gestito. Per altre informazioni, vedere: Limitazioni.
Runtime.Backend.ApiConnectionOperation.DefaultRetryCount 4 tentativi Imposta il numero di tentativi predefinito per i trigger e le azioni del connettore API gestito.
Runtime.Backend.ApiConnectionOperation.DefaultRetryInterval 00:00:07
(7 sec)
Imposta l'intervallo di ripetizione dei tentativi predefinito per i trigger e le azioni del connettore API gestito.
Runtime.Backend.ApiWebhookOperation.DefaultRetryMaximumInterval 01:00:00
(1 giorno)
Imposta l'intervallo massimo di tentativi per i trigger e le azioni webhook del connettore API gestito.
Runtime.Backend.ApiConnectionOperation.DefaultRetryMinimumInterval 00:00:05
(5 sec)
Imposta l'intervallo minimo di ripetizione dei tentativi per i trigger e le azioni del connettore API gestito.
Runtime.Backend.ApiWebhookOperation.DefaultWakeUpInterval 01:00:00
(1 giorno)
Imposta l'intervallo di riattivazione predefinito per i processi di attivazione e azione del connettore API gestito.

Criteri di ripetizione dei tentativi per tutte le altre operazioni

Impostazione Valore predefinito Descrizione
Runtime.ScaleMonitor.MaxPollingLatency 00:00:30
(30 sec)
Imposta la latenza di polling massima per il ridimensionamento del runtime.
Runtime.Backend.Operation.MaximumRetryCount 90 tentativi Imposta il numero massimo di tentativi nella definizione dei criteri di ripetizione dei tentativi per un'operazione del flusso di lavoro.
Runtime.Backend.Operation.MaximumRetryInterval 01:00:00:01
(1 giorno e 1 sec)
Imposta l'intervallo massimo nella definizione dei criteri di ripetizione dei tentativi per un'operazione del flusso di lavoro.
Runtime.Backend.Operation.MinimumRetryInterval 00:00:05
(5 sec)
Imposta l'intervallo minimo nella definizione dei criteri di ripetizione dei tentativi per un'operazione del flusso di lavoro.

Limiti

Gestire le impostazioni host - host.json

È possibile aggiungere, aggiornare o eliminare le impostazioni host, che specificano le impostazioni e i valori di configurazione del runtime che si applicano a tutti i flussi di lavoro nell'app per la logica, ad esempio i valori predefiniti per velocità effettiva, capacità, dimensioni dei dati e così via, sia che vengano eseguiti in locale o in Azure. Per le impostazioni host specifiche delle app per la logica, vedere la guida di riferimento per le impostazioni di runtime e distribuzione disponibili - host.json.

Portale di Azure - host.json

Per esaminare le impostazioni host per l'app per la logica basata su tenant singolo nel portale di Azure, seguire questa procedura:

  1. Nella casella di ricerca Portale di Azure trovare e aprire l'app per la logica.

  2. Nel menu delle risorse, in Strumenti di sviluppo selezionare Strumenti avanzati.

  3. Nel riquadro Strumenti avanzati selezionare Vaiper aprire l'ambiente Kudu per l'app per la logica.

  4. Sulla barra degli strumenti Kudu, aprire il menù Console di debug e selezionare CMD.

    Si apre una finestra della console, che permette di passare alla cartella wwwroot usando il prompt dei comandi. In alternativa, è possibile esplorare la struttura di directory visualizzata sopra la finestra della console.

  5. Esplorare il percorso seguente per la cartella wwwroot: ...\home\site\wwwroot.

  6. Sopra la finestra della console, nella tabella della directory, accanto al file host.json, selezionare Modifica.

  7. Dopo l'apertura del file host.json, esaminare le impostazioni host aggiunte in precedenza per l'app per la logica.

    Per altre informazioni sulle impostazioni dell'host, vedere la guida di riferimento per le impostazioni dell'host disponibili - host.json.

Per aggiungere un'impostazione, seguire questi passaggi:

  1. Prima di aggiungere o modificare le impostazioni, arrestare l'app per la logica nel portale di Azure.

    1. Nel menu della risorsa, selezionare Panoramica.

    2. Sulla barra degli strumenti del riquadro Panoramica selezionare Arresta.

  2. Se il file host.json è già aperto, tornare al file host.json . In caso contrario, seguire i passaggi precedenti per aprire il file host.json .

  3. Nell'oggetto extensionBundle aggiungere l'oggetto extensions, che include gli oggetti workflow e settings, ad esempio:

    {
       "version": "2.0",
       "extensionBundle": {
          "id": "Microsoft.Azure.Functions.ExtensionBundle",
          "version": "[1.*, 2.0.0)"
       },
       "extensions": {
          "workflow": {
             "settings": {
             }
          }
       }
    }
    
  4. Nell'oggetto settings aggiungere un elenco semplice con le impostazioni dell'host che si desidera usare per tutti i flussi di lavoro nell'app per la logica, ad esempio se questi flussi di lavoro vengono eseguiti in locale o in Azure:

    {
       "version": "2.0",
       "extensionBundle": {
          "id": "Microsoft.Azure.Functions.ExtensionBundle",
          "version": "[1.*, 2.0.0)"
       },
       "extensions": {
          "workflow": {
             "settings": {
                "Runtime.Trigger.MaximumWaitingRuns": "100"
             }
          }
       }
    }
    
  5. Al termine, ricordarsi di selezionare Salva.

  6. A questo momento, riavviare l'app per la logica. Tornare alla pagina Panoramica dell'app per la logica e selezionareRiavvia.

Visual Studio Code - host.json

Per esaminare le impostazioni host per l'app per la logica in Visual Studio Code, seguire questa procedura:

  1. Nel progetto dell'app per la logica, a livello di progetto radice, trovare e aprire il file host.json.

  2. Nell'oggetto extensions, in workflows e settings, esaminare le impostazioni host aggiunte in precedenza per l'app per la logica. In caso contrario, l'oggetto extensions non verrà visualizzato nel file.

    Per altre informazioni sulle impostazioni dell'host, vedere la guida di riferimento per le impostazioni dell'host disponibili - host.json.

Per aggiungere un'impostazione host, seguire questi passaggi:

  1. Nel file host.json, all'interno dell'oggetto extensionBundle, aggiungere l'oggetto extensions, che include gli oggetti workflow e settings, ad esempio:

    {
       "version": "2.0",
       "extensionBundle": {
          "id": "Microsoft.Azure.Functions.ExtensionBundle",
          "version": "[1.*, 2.0.0)"
       },
       "extensions": {
          "workflow": {
             "settings": {
             }
          }
       }
    }
    
  2. Nell'oggetto settings aggiungere un elenco semplice con le impostazioni dell'host che si desidera usare per tutti i flussi di lavoro nell'app per la logica, ad esempio se questi flussi di lavoro vengono eseguiti in locale o in Azure:

    {
       "version": "2.0",
       "extensionBundle": {
          "id": "Microsoft.Azure.Functions.ExtensionBundle",
          "version": "[1.*, 2.0.0)"
       },
       "extensions": {
          "workflow": {
             "settings": {
                "Runtime.Trigger.MaximumWaitingRuns": "100"
             }
          }
       }
    }
    

Passaggi successivi