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:
- Creare parametri per i valori che cambiano nei flussi di lavoro tra ambienti per App per la logica di Azure a tenant singolo
- Panoramica delle distribuzioni DevOps per app per la logica basate su singolo tenant
- Configurare la distribuzione DevOps per app per la logica basate su singolo tenant
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 |
Sì | 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 |
Sì | None | Obbligatoria per impostare la stringa di connessione per un account di archiviazione di Azure. Per altre informazioni, vedere AzureWebJobsStorage. |
FUNCTINONS_EXTENSION_VERSION |
Sì | ~4 |
Obbligatoria per impostare la versione di Funzioni di Azure. Per altre informazioni, vedere FUNCTIONS_EXTENSION_VERSION. |
FUNCTIONS_WORKER_RUNTIME |
Sì | 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 |
Sì | 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
Nella casella di ricerca Portale di Azure trovare e aprire l'app per la logica.
Nel menu dell'app per la logica, in Impostazioni selezionare Variabili di ambiente.
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.
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
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
Dimensioni massime del contenuto
Per impostazione predefinita, i trigger predefiniti, ad esempio HTTP o Request, sono limitati alle dimensioni del messaggio descritte in Limiti e informazioni di riferimento sulla configurazione - Messaggi. Per gestire i file superiori al limite, provare a caricare il contenuto come BLOB in Archiviazione BLOB di Azure e quindi ottenere il contenuto usando il connettore BLOB di Azure.
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:
Nella casella di ricerca Portale di Azure trovare e aprire l'app per la logica.
Nel menu delle risorse, in Strumenti di sviluppo selezionare Strumenti avanzati.
Nel riquadro Strumenti avanzati selezionare Vaiper aprire l'ambiente Kudu per l'app per la logica.
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.
Esplorare il percorso seguente per la cartella wwwroot:
...\home\site\wwwroot
.Sopra la finestra della console, nella tabella della directory, accanto al file host.json, selezionare Modifica.
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:
Prima di aggiungere o modificare le impostazioni, arrestare l'app per la logica nel portale di Azure.
Nel menu della risorsa, selezionare Panoramica.
Sulla barra degli strumenti del riquadro Panoramica selezionare Arresta.
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 .
Nell'oggetto
extensionBundle
aggiungere l'oggettoextensions
, che include gli oggettiworkflow
esettings
, ad esempio:{ "version": "2.0", "extensionBundle": { "id": "Microsoft.Azure.Functions.ExtensionBundle", "version": "[1.*, 2.0.0)" }, "extensions": { "workflow": { "settings": { } } } }
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" } } } }
Al termine, ricordarsi di selezionare Salva.
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:
Nel progetto dell'app per la logica, a livello di progetto radice, trovare e aprire il file host.json.
Nell'oggetto
extensions
, inworkflows
esettings
, esaminare le impostazioni host aggiunte in precedenza per l'app per la logica. In caso contrario, l'oggettoextensions
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:
Nel file host.json, all'interno dell'oggetto
extensionBundle
, aggiungere l'oggettoextensions
, che include gli oggettiworkflow
esettings
, ad esempio:{ "version": "2.0", "extensionBundle": { "id": "Microsoft.Azure.Functions.ExtensionBundle", "version": "[1.*, 2.0.0)" }, "extensions": { "workflow": { "settings": { } } } }
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" } } } }