Creare un esempio di flusso di lavoro dell'app per la logica Standard usando il portale di Azure
Si applica: App per la logica di Azure (Standard)
Questa guida pratica illustra come creare un flusso di lavoro automatizzato di esempio che attende una richiesta Web in ingresso e successivamente invia un messaggio a un account di posta elettronica. In particolare, si crea una risorsa app per la logica Standard, che può includere più flussi di lavoro con stato e senza stato che vengono eseguiti in App per la logica di Azure a tenant singolo.
- Trigger request, che crea un endpoint chiamabile in grado di gestire le richieste in ingresso da qualsiasi chiamante.
- Connettore di Office 365 Outlook, che fornisce un'azione per l'invio di messaggi di posta elettronica.
Al termine, il flusso di lavoro è simile all'esempio generale seguente:
È possibile avere più flussi di lavoro in un'app per la logica Standard. I flussi di lavoro nella stessa app per la logica e nello stesso tenant vengono eseguiti nello stesso processo del runtime di App per la logica di Azure, pertanto condividono le stesse risorse e offrono prestazioni migliori.
Suggerimento
Per altre informazioni, è possibile porre queste domande a Copilot di Azure:
- Che cos'è App per la logica di Azure?
- Che cos'è un flusso di lavoro dell'app per la logica Standard?
- Qual è il trigger della richiesta?
- Che cos'è il connettore di Office 365 Outlook?
Per trovare Copilot di Azure, nella barra degli strumenti del portale di Azure selezionare Copilot.
I connettori in questo esempio sono solo due connettori tra gli oltre 1000 connettori che è possibile usare in un flusso di lavoro. Anche se questo esempio è basato sul cloud, è possibile creare flussi di lavoro che integrano un'ampia gamma di app, dati, servizi e sistemi in ambienti cloud, locali e ibridi.
Man mano che si procede, vengono completate attività ai livelli successivi:
Per creare un flusso di lavoro di app per la logica Standard da un modello predefinito che segue un modello comunemente usato, vedere Creare un flusso di lavoro di app per la logica Standard da un modello predefinito.
Per creare e gestire un flusso di lavoro di app per la logica Standard usando altri strumenti, vedere Creare flussi di lavoro Standard con Visual Studio Code. Con Visual Studio Code, è possibile sviluppare, testare ed eseguire flussi di lavoro nell'ambiente di sviluppo locale.
Per altre informazioni, consultare la documentazione seguente:
Prerequisiti
Account e sottoscrizione di Azure. Se non si ha una sottoscrizione, è possibile iscriversi per creare un account Azure gratuito.
Un account di archiviazione di Azure. Se non disponibile, è possibile creare un account di archiviazione in anticipo o durante la creazione dell'app per la logica.
Nota
Il tipo di risorsa di app per la logica Standard è basato su Funzioni di Azure e presenta requisiti di archiviazione simili alle app per le funzioni. I flussi di lavoro con stato eseguono transazioni di archiviazione, come l'uso di code per pianificare e archiviare gli stati del flusso di lavoro in tabelle e blob. Queste transazioni comportano addebiti per l'archiviazione. Per maggiori informazioni su come i flussi di lavoro con stato archiviano i dati nell'archivio esterno, vedere Flussi di lavoro con stato e senza stato.
Un account di posta elettronica di un provider supportato da App per la logica di Azure, ad esempio un account Office 365 Outlook, Outlook.com o Gmail. Per informazioni sugli altri provider di posta elettronica supportati, vedere Connettori per App per la logica di Azure.
Questo esempio usa Office 365 Outlook con un account aziendale o dell'istituto di istruzione. Se si usa un account di posta elettronica diverso, la procedura generale resta invariata, ma l'esperienza utente potrebbe essere leggermente diversa. Se si usa Outlook.com, usare invece l'account Microsoft personale per accedere.
Nota
Se si vuole usare il connettore Gmail, solo gli account G Suite Business possono usare questo connettore senza restrizioni nei flussi di lavoro delle app per la logica. Se si dispone di un account Gmail consumer, è possibile usare questo connettore solo con servizi approvati da Google specifici oppure è possibile creare un'app client Google da usare per l'autenticazione con il connettore Gmail. Per altre informazioni, vedere Informative sulla privacy e sulla sicurezza dei dati per i connettori Google in App per la logica di Azure.
Installare o usare uno strumento che può inviare richieste HTTP per testare la soluzione, ad esempio:
- Visual Studio Code con un'estensione da Visual Studio Marketplace
- Invoke-RestMethod di PowerShell
- Microsoft Edge - Strumento console di rete
- Bruno
- curl
Attenzione
Per gli scenari in cui sono presenti dati sensibili, ad esempio credenziali, segreti, token di accesso, chiavi API e altre informazioni simili, assicurarsi di usare uno strumento che protegge i dati con le funzionalità di sicurezza necessarie, funziona offline o in locale, non sincronizza i dati nel cloud e non richiede l'accesso a un account online. In questo modo si riduce il rischio di esporre i dati sensibili al pubblico.
Per implementare la risorsa dell'app per la logica Standard in un ambiente del servizio app v3 (ASEv3) - Solo piano di Windows, è prima necessario creare questa risorsa di ambiente. È quindi possibile selezionare questo ambiente come percorso di distribuzione quando si crea l'app per la logica. Per altre informazioni, vedere Tipi di risorse e ambienti e Creare un ambiente del servizio app.
Per abilitare la comunicazione dai flussi di lavoro dell'app per la logica Standard a un endpoint privato in un account di integrazione Premium, è necessario avere una rete virtuale di Azure esistente. L'app per la logica, la rete virtuale e l'account di integrazione devono usare la stessa area di Azure. Sia l'app per la logica che l'account di integrazione devono esistere all'interno della stessa rete virtuale. Per altre informazioni, vedere Creare una rete virtuale.
Se si abilita Application Insights nell'app per la logica, è possibile abilitare facoltativamente la registrazione e la traccia di diagnostica. È possibile farlo quando si crea l'app per la logica o dopo la distribuzione. È necessario avere un'istanza di Application Insights, ma è possibile creare questa risorsa in anticipo, quando si crea l'app per la logica o dopo la distribuzione.
Procedure consigliate e raccomandazioni
Per prestazioni e velocità di risposta ottimali della finestra di progettazione, consultare e seguire le seguenti linee guida:
Usare un massimo di 50 azioni per flusso di lavoro. Il superamento di questo numero di azioni aumenta la possibilità di rallentare le prestazioni della finestra di progettazione.
Valutare la possibilità di suddividere la logica di business in più flussi di lavoro, se necessario.
Non avere più di 10-15 flussi di lavoro per ogni risorsa dell'app per la logica.
Più flussi di lavoro nell'app per la logica aumentano la possibilità di tempi di caricamento più lunghi, che influiscono negativamente sulle prestazioni. Se sono presenti app per la logica mission-critical che richiedono distribuzioni senza tempi di inattività, è consigliabile configurare gli slot di distribuzione.
Creare una risorsa dell'app per la logica Standard
Accedere al portale di Azure con l'account di Azure personale.
Nella casella di ricerca del portale di Azure, immettere app per la logica e selezionare App per la logica.
Nella barra degli strumenti della pagina App per la logica, selezionare Aggiungi.
Viene visualizzata la pagina Crea app per la logica e vengono visualizzate le opzioni seguenti:
Piano Descrizione Consumo Crea una risorsa dell'app per la logica che supporta un solo flusso di lavoro eseguito in App per la logica di Azure multi-tenant e usa il modello a consumo per la fatturazione. Standard Crea una risorsa dell'app per la logica che supporta più flussi di lavoro. L'utente ha a disposizione le seguenti opzioni:
- Piano di servizio di flusso di lavoro: i flussi di lavoro vengono eseguiti in App per la logica di Azure a tenant singolo e usano il modello Standard per la fatturazione.
- Ambiente del servizio app V3: i flussi di lavoro vengono eseguiti in App per la logica di Azure a tenant singolo e usano un piano di ambiente del servizio app per la fatturazione.
- Ibrido (anteprima): i flussi di lavoro vengono eseguiti in locale e in più cloud usando la scalabilità automatica guidata dagli eventi di Kubernetes (KEDA). Per altre informazioni, vedere Creare flussi di lavoro Standard per la distribuzione ibrida.Nella pagina Crea app per la logica, selezionare Standard (Piano di servizio di flusso di lavoro).
Tipo di piano Descrizione Standard Questo tipo di app per la logica è la selezione predefinita. I flussi di lavoro vengono eseguiti in App per la logica di Azure a tenant singolo e usano il modello di determinazione prezzi Standard. Consumo Questo tipo di app per la logica e il flusso di lavoro vengono eseguiti in App per la logica di Azure multi tenant globale e usano il modello di determinazione prezzi A consumo. Nella pagina Creare app per la logica, nella scheda Nozioni di base, fornire le seguenti informazioni di base sull'app per la logica:
Proprietà Richiesto Valore Descrizione Abbonamento Sì <Azure-subscription-name> Il nome della sottoscrizione di Azure.
In questo esempio viene usato Con pagamento in base al consumo.Gruppo di risorse Sì <Azure-resource-group-name> Il gruppo di risorse di Azure in cui vengono create l'app per la logica e le risorse correlate. Questo nome deve essere univoco tra aree e può contenere solo lettere, numeri, trattini (-), trattino basso (_), parentesi (()) e punti (.).
In questo esempio viene creato un gruppo di risorse denominato Fabrikam-Workflows-RG.Nome dell'app per la logica Sì <logic-app-name> Il nome della risorsa dell'app per la logica, che deve essere univoco tra aree e può contenere solo lettere, numeri, trattini (-), trattino basso (_), parentesi (()) e punti (.).
Nota: il nome dell'app per la logica ottiene automaticamente il suffisso, azurewebsites.net, poiché la risorsa dell'app per la logica Standard è basata sul runtime di App per la logica di Azure a tenant singolo, che usa il modello di estendibilità di Funzioni di Azure ed è ospitata come estensione nel runtime di Funzioni di Azure. Funzioni di Azure usa la stessa convenzione di denominazione delle app.
Questo esempio crea una risorsa di app per la logica denominata Fabrikam-Workflows.Area Sì <Area di Azure> Area del data center di Azure per l'app per la logica.
Questo esempio usa Stati Uniti occidentali.Piano Windows Sì <nome piano> Nome del piano da usare. Selezionare il nome di un piano esistente o specificare un nome per un nuovo piano.
Questo esempio usa il nome My-App-Service-Plan.
Nota: Non usare un piano di servizio dell’app basato su Linux. È supportato solo il piano di servizio dell’app basato su Windows.Piano tariffario Sì <piano tariffario> Piano tariffario da usare per l'app per la logica e i flussi di lavoro. La selezione influisce sui prezzi, il calcolo, la memoria e l'archiviazione usati dall'app per la logica e dai flussi di lavoro.
Per altre informazioni, vedere Piani di hosting e piani tariffari.Nota
Se si seleziona una regione di Azure che supporta la ridondanza della zona di disponibilità, la sezione Ridondanza della zona è abilitata. Con questa sezione, si può scegliere di abilitare la ridondanza della zona di disponibilità per l'app per la logica. Tuttavia, le regioni di Azure attualmente supportate non includono Stati Uniti occidentali, quindi tale sezione si può ignorare per questo esempio. Per altre informazioni, vedere Proteggere le app per la logica da errori di regione con ridondanza della zona e zone di disponibilità.
Al termine, le impostazioni saranno simili all'esempio seguente:
Nota
L'impostazione dell'app FUNCTIONS_WORKER_RUNTIME è necessaria per l'app per la logica Standard e il valore è stato impostato in precedenza su node. Tuttavia, il valore richiesto è ora dotnet per tutte le app per la logica Standard nuove ed esistenti distribuite. Questa modifica del valore non deve influire sul runtime del flusso di lavoro, quindi tutto dovrebbe funzionare allo stesso modo di prima. Per altre informazioni, vedere l'impostazione dell'app FUNCTIONS_WORKER_RUNTIME.
Il valore dell'impostazione dell'app APP_KIND è necessario per l'app per la logica Standard e il valore deve essere workflowApp. In alcuni scenari, tuttavia, questa impostazione dell'app potrebbe non essere presente, ad esempio a causa dell'automazione che usa 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. Per maggiori informazioni, vedere l'impostazione dell'app APP_KIND.
Al termine, selezionare Avanti: Archiviazione.
Nella scheda Archiviazione, specificare le informazioni seguenti sulla soluzione di archiviazione e sul piano di hosting da usare per l'app per la logica.
Proprietà Richiesto Valore Descrizione Tipo di archiviazione Sì - Archiviazione di Azure
- SQL e Archiviazione di AzureTipo di archiviazione da usare per gli artefatti e i dati correlati al flusso di lavoro.
- Per implementare solo in Azure, selezionare Archiviazione di Azure.
- Per usare SQL come archiviazione primaria e Archiviazione di Azure come archiviazione secondaria, selezionare SQL e Archiviazione di Azure e consultare Configurare l'archiviazione del database SQL per le app per la logica Standard in App per la logica di Azure a tenant singolo.
Nota: se si sta implementando in un'area di Azure, è comunque necessario un account di archiviazione di Azure, che viene usato per completare l'hosting monouso della configurazione dell'app per la logica nella piattaforma App per la logica di Azure. Lo stato del flusso di lavoro, la cronologia di esecuzione e altri artefatti di runtime vengono archiviati nel database SQL.
Per le distribuzioni in una posizione personalizzata ospitata in un cluster Azure Arc, è necessario solo SQL come provider di archiviazione.Account di archiviazione Sì <Azure-storage-account-name> Account di Archiviazione di Azure da usare per le transazioni di archiviazione.
Questo nome di risorsa deve essere univoco tra aree e deve avere tra 3 e 24 caratteri con solo numeri e lettere minuscole. Selezionare un account esistente o crearne uno nuovo.
Questo esempio crea un account di archiviazione denominato mystorageacct.Nella scheda Rete è possibile lasciare le opzioni predefinite per seguire l'esempio. Per scenari specifici e reali, tuttavia, assicurarsi di esaminare e selezionare le opzioni appropriate seguenti. È anche possibile modificare questa configurazione dopo aver implementato la risorsa dell'app per la logica. Per maggiori informazioni, vedere Proteggere il traffico tra app per la logica Standard e reti virtuali di Azure con gli endpoint privati.
L'impostazione Abilita accesso pubblico seguente si applica agli endpoint nell'app per la logica e non influisce sul fatto che l'app per la logica possa comunicare con le risorse di Azure nella stessa rete virtuale, ad esempio un account di integrazione Premium con un endpoint privato. Per accedere a tali risorse di Azure, l'app per la logica deve esistere nella stessa rete virtuale di queste risorse.
Abilitare l'accesso pubblico Comportamento On L'app per la logica ha un endpoint pubblico con un indirizzo in ingresso aperto a Internet. I client che si trovano all'esterno di una rete virtuale di Azure possono usare questo endpoint per accedere all'app per la logica, ma non alla rete virtuale. Disattivato L'app per la logica non ha un endpoint pubblico, ma ha un endpoint privato per la comunicazione all'interno di una rete virtuale di Azure ed è isolato in tale rete virtuale. L'endpoint privato può comunicare con gli endpoint nella rete virtuale, ma solo dai client all'interno di tale rete. Questa configurazione significa anche che il traffico dell'app per la logica può essere regolato da gruppi di sicurezza di rete o interessato dalle route di rete virtuale. Le impostazioni seguenti controllano l'accesso dell'app per la logica Standard agli endpoint in una rete virtuale:
Abilita aggiunta rete Comportamento On I flussi di lavoro dell'app per la logica possono comunicare privatamente e in modo sicuro con gli endpoint nella rete virtuale.
Per abilitare la comunicazione tra l'app per la logica e un endpoint privato in un account di integrazione Premium, selezionare questa opzione, che rende disponibile anche la sezione Rete virtuale. Per Rete virtuale selezionare la rete virtuale di Azure da usare. Questa scelta rende disponibili le sezioni Accesso in ingresso e Accesso in uscita.Disattivato I flussi di lavoro dell'app per la logica non possono comunicare con gli endpoint nella rete virtuale. Le sezioni seguenti vengono visualizzate dopo aver selezionato una rete virtuale quando l'opzione Abilita l'inserimento nella rete è impostata su On.
Accesso in ingresso
- Abilita gli endpoint privati: si applica agli endpoint privati nell'app per la logica Standard ed è disponibile solo quando l'opzione Abilita l'accesso pubblico è impostata su Off.
Accesso in uscita
- Abilita l'integrazione della rete virtuale: per abilitare la comunicazione tra un'app per la logica Standard e un endpoint privato in un account di integrazione Premium, selezionare On e la subnet da usare.
Se le impostazioni di creazione e distribuzione supportano l'uso di Application Insights, è possibile abilitare facoltativamente la registrazione diagnostica e il tracciamento per il flusso di lavoro dell'app per la logica seguendo questi passaggi:
Nella scheda Monitoraggio, in Application Insights, impostare Abilita Application Insights su Sì.
Per l'impostazione Application Insights, selezionare un'istanza di Application Insights esistente, oppure, se si vuole creare una nuova istanza, selezionare Creare nuovo e specificare il nome che si vuole usare.
Dopo che Azure convalida le impostazioni dell'app per la logica, nella schedaRivedi + crea, selezionare Crea, ad esempio:
Nota
Se durante questo passaggio viene visualizzato un errore di convalida, aprire ed esaminare i dettagli dell'errore. Ad esempio, se la regione selezionata raggiunge una quota per le risorse che si sta tentando di creare, potrebbe essere necessario provare una regione diversa.
Al termine della distribuzione di Azure, la risorsa dell'app per la logica è automaticamente attiva, ma non esegue ancora alcuna operazione perché la risorsa è vuota e non sono ancora stati aggiunti flussi di lavoro.
Nella pagina di completamento della distribuzione, selezionare Vai alla risorsa in modo da poter aggiungere un flusso di lavoro vuoto.
Aggiungere un flusso di lavoro vuoto
Dopo aver creato la risorsa dell'app per la logica vuota, è necessario aggiungere il primo flusso di lavoro.
Dopo che Azure apre la risorsa, nel menu dell'app per la logica, in Flussi di lavoro, selezionare Flussi di lavoro. Sulla barra degli strumenti Flussi di lavoro, selezionare Aggiungi.
Dopo che si è aperto il riquadro Nuovo flusso di lavoro, specificare un nome per il flusso di lavoro e selezionare il tipo di stato, con stato o senza stato. Al termine, selezionare Crea.
In questo esempio viene aggiunto un flusso di lavoro con stato vuoto denominato Stateful-Workflow. Per impostazione predefinita, il flusso di lavoro è abilitato, ma non esegue alcuna operazione fino a quando non si aggiunge un trigger e azioni.
Nell'elenco del flusso di lavoro selezionare il flusso di lavoro con stato vuoto.
Nel menù del flusso di lavoro, in Sviluppatore, selezionare Progettazione.
Nell'area di progettazione viene visualizzato un prompt per selezionare un'operazione di trigger. Per impostazione predefinita, il prompt è già selezionato, pertanto è già visualizzato un riquadro con trigger disponibili.
Ora, aggiungere un trigger che avvia il flusso di lavoro.
Aggiungere un trigger
Questo flusso di lavoro di esempio inizia con il trigger di Richiesta predefinito denominato Quando viene ricevuta una richiesta HTTP. Questo trigger crea un endpoint che altri servizi o flussi di lavoro dell'app per la logica possono chiamare e attende l'arrivo di tali chiamate o richieste in ingresso. Le operazioni predefinite vengono eseguite in nativamente e direttamente all'interno del runtime di App per la logica di Azure.
Nella progettazione del flusso di lavoro verificare che il flusso di lavoro vuoto sia aperto e che nell'area di progettazione sia selezionata l'opzione Aggiungi un trigger.
Usando richiesta come termine di ricerca, seguire questa procedura per aggiungere il trigger di Richiesta predefinito denominato Quando viene ricevuta una richiesta HTTP nel flusso di lavoro.
Quando compare il trigger nella finestra di progettazione, si apre il riquadro informazioni del trigger che mostra le proprietà, le impostazioni e altre azioni del trigger.
Salvare il flusso di lavoro. Sulla barra degli strumenti della finestra di progettazione seleziona Salva.
Quando si salva un flusso di lavoro per la prima volta e il flusso di lavoro inizia con un trigger di Richiesta, App per la logica di Azure genera automaticamente un URL per un endpoint creato dal trigger di Richiesta. Successivamente, quando si testa il flusso di lavoro, si invia una richiesta a questo URL, che attiva il trigger e avvia l'esecuzione del flusso di lavoro.
Aggiunge un'azione
Questo flusso di lavoro di esempio continua con l'azione del connettore gestito di Office 365 Outlook denominata Invia un messaggio di posta elettronica. Le operazioni del connettore gestito vengono eseguite in Azure nativamente e direttamente nel runtime di App per la logica di Azure.
Nella finestra di progettazione, sotto il trigger aggiunto, selezionare il segno più (+) >Aggiungi un'azione.
Viene visualizzato il riquadro Aggiungi un'azione in modo da poter selezionare l'azione successiva.
Usando Office invia un messaggio di posta elettronica come termine di ricerca, seguire questa procedura per aggiungere l'azione di Office 365 Outlook denominata Invia un messaggio di posta elettronica (V2) al flusso di lavoro.
Nel riquadro delle informazioni dell'azione, nella scheda Crea connessione selezionare Accedi per creare una connessione all'account di posta elettronica.
Quando viene richiesto di accedere all'account di posta elettronica, accedere con le credenziali dell'account.
Nota
Se viene visualizzato il messaggio di errore "Non riuscito con l’errore: 'Il browser è chiuso.'. Accedi di nuovo", controllare se il browser blocca i cookie di terze parti. Se questi cookie sono bloccati, provare ad aggiungere https://portal.azure.com all'elenco dei siti che possono usare i cookie. Se si usa la modalità in incognito, assicurarsi che i cookie di terze parti non siano bloccati quando si lavora in questa modalità.
Se necessario, ricaricare la pagina, aprire il flusso di lavoro, aggiungere nuovamente l'azione di posta elettronica e provare a creare la connessione.
Dopo che Azure ha creato la connessione, nella finestra di progettazione compare l'azione, selezionata per impostazione predefinita, Invia un messaggio di posta elettronica. Se l'azione non è selezionata, selezionare l'azione in modo che sia aperto anche il relativo riquadro informazioni.
Nel riquadro delle informazioni sull'azione, nella scheda Parametri specificare le informazioni necessarie per l'azione, ad esempio:
Proprietà Richiesto Valore Descrizione Per Sì <indirizzo-posta-elettronica> Destinatario del messaggio di posta elettronica, che può essere l'indirizzo di posta elettronica a scopo di test. Questo esempio usa l'indirizzo di posta elettronica fittizio, sophiaowen@fabrikam.com. Argomento Sì Un messaggio di posta elettronica dal flusso di lavoro di esempio L'oggetto del messaggio di posta elettronica Testo Sì Un saluto dal flusso di lavoro di esempio Contenuto del corpo del messaggio di posta elettronica Nota
Quando si apportano modifiche nel riquadro informazioni in Impostazioni, Risultato statico o Esegui dopo, assicurarsi di selezionare Fine per eseguire il commit di tali modifiche prima di passare a un’altra scheda o alla finestra di progettazione. In caso contrario, la finestra di progettazione non manterrà le modifiche.
Salvare il flusso di lavoro. Sulla barra degli strumenti della finestra di progettazione seleziona Salva.
Se l'ambiente ha requisiti di rete o firewall rigorosi che limitano il traffico, è necessario configurare le autorizzazioni per tutte le connessioni di trigger o azione esistenti nel flusso di lavoro. Per trovare i nomi di dominio completi, consultare Trovare i nomi di dominio per l'accesso al firewall.
In caso contrario, per testare il flusso di lavoro, attivare manualmente un'esecuzione.
Eliminare elementi dalla finestra di progettazione
Per eliminare un elemento nel flusso di lavoro dalla finestra di progettazione, seguire questa procedura:
Selezionare l'elemento, aprire il menu di scelta rapida dell'elemento (MAIUSC+F10) e selezionare Elimina. Per confermare, scegliere OK.
Selezionare l'elemento e premere il tasto di eliminazione. Per confermare, scegliere OK.
Selezionare l'elemento in modo che venga aperto il riquadro informazioni per l'elemento. Nell'angolo superiore destro del riquadro aprire i puntini di sospensione (...) e selezionare Elimina. Per confermare, scegliere OK.
Suggerimento
Se il menù con i puntini di sospensione non è visibile, espandere la finestra del browser in modo che il riquadro delle informazioni mostri il pulsante dei puntini di sospensione (...) nell'angolo superiore destro.
Trovare i no,i di dominio per l'accesso al firewall
Prima di implementare l’app per la logica ed eseguire il flusso di lavoro nel portale di Azure, se l'ambiente ha requisiti di rete o firewall rigorosi che limitano il traffico, è necessario configurare le autorizzazioni di rete o di firewall per qualsiasi connessione di trigger o azione del flusso di lavoro esistente nell’app per la logica.
Per trovare gli indirizzi IP in ingresso e in uscita usati dall'app per la logica e dai flussi di lavoro, seguire i seguenti passaggi:
Nel menù dell'app per la logica, in Impostazioni, selezionare Rete.
Nella pagina della rete, trovare ed esaminare le sezioni Traffico in ingresso e Traffico in uscita.
Per trovare i nomi di dominio completi (FQDN) per le connessioni, seguire questa procedura:
Nel menù dell'app per la logica, in Flussi di lavoro, selezionare Connessioni. Nella scheda Connessioni API selezionare il nome della risorsa della connessione, ad esempio:
Espandere il browser in modo che, quando compare visualizzazione JSON nell'angolo in alto a destra del browser, si riesca a selezionare Visualizzazione JSON.
Copiare e salvare il valore della proprietà connectionRuntimeUrl in un punto sicuro in modo che sia possibile configurare il firewall con queste informazioni.
Per ogni connessione, ripetere i passaggi pertinenti.
Attivare il flusso di lavoro
In questo esempio, il flusso di lavoro viene eseguito quando il trigger di Richiesta riceve una richiesta in ingresso, che viene inviata all'URL per l'endpoint creato dal trigger. App per la logica di Azure ha generato automaticamente questo URL al primo salvataggio del flusso di lavoro. Quindi, prima di poter inviare la richiesta per attivare il flusso di lavoro, è necessario trovare questo URL.
Nella finestra di progettazione del flusso di lavoro selezionare il trigger di Richiesta denominato Quando viene ricevuta una richiesta HTTP.
Dopo l'apertura del riquadro informazioni, nella scheda Parametri, individuare la proprietà HTTP POST URL. Per copiare l'URL generato, selezionare (l'icona copia file) Copia URL e salvare l'URL da qualche parte. L'URL presenta questo formato:
https://<*logic-app-name*>.azurewebsites.net:443/api/<*workflow-name*>/triggers/manual/invoke?api-version=2020-05-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=<*shared-access-signature*>
L'URL di questo esempio è simile a questo:
https://fabrikam-workflows.azurewebsites.net:443/api/Fabrikam-Stateful-Workflow/triggers/manual/invoke?api-version=2020-05-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=xxxxxXXXXxxxxxXXXXxxxXXXXxxxxXXXX
Suggerimento
È anche possibile trovare l'URL dell'endpoint nella pagina Panoramica dell'app per la logica nella proprietà URL flusso di lavoro.
- Nel menu della risorsa, selezionare Panoramica.
- Nel riquadro Panoramica trovare la proprietà URL del flusso di lavoro.
- Per copiare l'URL dell'endpoint, spostare il puntatore sulla fine del testo dell'URL dell'endpoint e selezionare Copia negli Appunti (icona copia file).
Per testare l'URL dell'endpoint e attivare il flusso di lavoro, inviare una richiesta HTTP all'URL, incluso il metodo previsto dal trigger Richiesta, usando lo strumento di richiesta HTTP e le relative istruzioni.
Questo esempio usa il metodo GET con l'URL copiato, simile all'esempio seguente:
GET https://fabrikam-workflows.azurewebsites.net:443/api/Fabrikam-Stateful-Workflow/triggers/manual/invoke?api-version=2020-05-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=xxxxxXXXXxxxxxXXXXxxxXXXXxxxxXXXX
Quando il trigger viene attivato, il flusso di lavoro di esempio viene eseguito e invia un messaggio di posta elettronica simile a questo esempio:
Esaminare la cronologia di esecuzione del flusso di lavoro
Al termine dell'esecuzione di un flusso di lavoro con stato, è possibile visualizzare la cronologia di esecuzione del flusso di lavoro, incluso lo stato per l'esecuzione complessiva, per il trigger e per ogni azione insieme ai relativi input e output. Nel portale di Azure la cronologia di esecuzione del flusso di lavoro e la cronologia dei trigger vengono visualizzate a livello di flusso di lavoro, non a livello di risorsa dell'app per la logica. Per maggiori informazioni, vedere Esaminare la cronologia di esecuzione del flusso di lavoro e Esaminare la cronologia dei trigger.
Per questo flusso di lavoro di esempio, la cronologia di esecuzione del flusso di lavoro è simile all'esempio seguente:
Esaminare la cronologia dei trigger
Per un flusso di lavoro con stato, è possibile rivedere la cronologia dei trigger per ogni esecuzione, incluso lo stato del trigger insieme agli input e output, separatamente dalla cronologia di esecuzione del flusso di lavoro. Nel portale di Azure la cronologia dei trigger e di esecuzione vengono visualizzate a livello di flusso di lavoro, non a livello di app per la logica. Per maggiori informazioni, vedere Esaminare la cronologia dei trigger.
Inviare nuovamente il flusso di lavoro con gli stessi input
Per l'esecuzione di un flusso di lavoro con stato esistente, è possibile eseguire nuovamente l'intero flusso di lavoro con gli stessi input usati in precedenza per l'esecuzione. Per altre informazioni, vedere Rieseguire un flusso di lavoro con gli stessi input.
Configurare l'accesso all'identità gestita all'account di archiviazione
Per impostazione predefinita, l'app per la logica Standard autentica l'accesso all'account Archiviazione di Azure usando un stringa di connessione. Tuttavia, è possibile configurare un'identità gestita assegnata dall'utente per autenticare l'accesso.
Nota
Attualmente, non è possibile disabilitare l'accesso alla chiave dell'account di archiviazione per le app per la logica Standard che usano l'opzione di hosting Del piano di servizio flusso di lavoro. Tuttavia, se l'app per la logica usa l'opzione di hosting ambiente del servizio app v3, è possibile disabilitare l'accesso alla chiave dell'account di archiviazione dopo aver completato i passaggi per configurare l'autenticazione dell'identità gestita.
Nella portale di Azure seguire questa procedura per creare un'identità gestita assegnata dall'utente.
Dall'identità assegnata dall'utente ottenere l'ID risorsa:
Nel menu Identità gestita assegnata dall'utente, in Impostazioni selezionare Proprietà.
Dalla proprietà Id copiare e salvare l'ID risorsa.
Dall'account di archiviazione ottenere gli URI per i servizi BLOB, code e tabelle:
Nel menu dell'account di archiviazione, in Impostazioni, selezionare Endpoint.
Copiare e salvare gli URI per il servizio BLOB, il servizio di accodamento e il servizio tabelle.
Nell'account di archiviazione aggiungere le assegnazioni di ruolo necessarie per l'identità assegnata dall'utente:
Nel menu dell'account di archiviazione selezionare Controllo di accesso (IAM).
Nella barra degli strumenti della pagina Controllo di accesso (IAM) scegliere Aggiungi assegnazione di ruolo dal menu Aggiungi.
Nella scheda Ruoli funzione processo aggiungere ognuno dei ruoli seguenti all'identità assegnata dall'utente:
- Collaboratore account di archiviazione
- Proprietario dei dati del BLOB di archiviazione
- Collaboratore ai dati della coda di archiviazione
- Collaboratore ai dati della tabella di archiviazione
Per altre informazioni, vedere Assegnare ruoli di Azure usando il portale di Azure e Informazioni sulle assegnazioni di ruolo.
Seguire questa procedura per aggiungere l'identità gestita assegnata dall'utente alla risorsa dell'app per la logica Standard.
Se l'app per la logica Standard usa l'opzione di hosting denominata Piano di servizio flusso di lavoro, abilitare il monitoraggio della scalabilità di runtime:
Nota
Se l'app per la logica usa l'opzione di hosting ambiente del servizio app (ASE) v3, ignorare i passaggi per il monitoraggio della scalabilità di runtime perché l'ambiente del servizio app non supporta questa funzionalità.
Nel menu dell'app per la logica, in Impostazioni, selezionare Configurazione.
Nella scheda Impostazioni di runtime del flusso di lavoro selezionare Sì per Monitoraggio scalabilità di runtime.
Sulla barra degli strumenti Configurazione selezionare Salva.
Nell'app per la logica Standard configurare l'ID risorsa e gli URI del servizio:
Selezionare Panoramica nel menu dell'App per la logica.
Nella barra degli strumenti della pagina Panoramica, selezionare Arresta.
Nel menu dell'app per la logica, in Impostazioni selezionare Variabili di ambiente.
Nella scheda Impostazioni app selezionare Aggiungi per aggiungere le impostazioni e i valori dell'app seguenti:
Impostazione app Valore AzureWebJobsStorage__managedIdentityResourceId ID risorsa per l'identità gestita assegnata dall'utente AzureWebJobsStorage__blobServiceUri URI del servizio BLOB per l'account di archiviazione AzureWebJobsStorage__queueServiceUri URI del servizio di accodamento per l'account di archiviazione AzureWebJobsStorage__tableServiceUri URI del servizio tabelle per l'account di archiviazione AzureWebJobsStorage__credential managedIdentity Nella scheda Impostazioni app eliminare l'impostazione dell'app denominata AzureWebJobsStorage, che viene impostata sul stringa di connessione associato all'account di archiviazione.
Al termine, selezionare Applica per salvare le modifiche e riavviare l'app per la logica.
L'applicazione delle modifiche potrebbe richiedere alcuni istanti. Se necessario, nel menu dell'app per la logica selezionare Panoramica e sulla barra degli strumenti selezionare Aggiorna.
Potrebbe essere visualizzato il messaggio seguente, ma non è un errore e non influisce sull'app per la logica:
L'impostazione dell'app "AzureWebjobsStorage" non è presente.
Abilitare la cronologia di esecuzione per i flussi di lavoro senza stato
Per eseguire il debug di un flusso di lavoro senza stato più facilmente, è possibile abilitare la cronologia di esecuzione per tale flusso di lavoro e quindi disabilitare la cronologia di esecuzione al termine. Seguire questa procedura per il portale di Azure o se si usa Visual Studio Code, vedere Creare flussi di lavoro con stato e senza stato in Visual Studio Code.
Nel portale di Azure, aprire la risorsa dell’app per la logica Standard.
Nel menu dell'app per la logica, in Impostazioni, selezionare Configurazione.
Nella scheda Impostazioni applicazione selezionare Nuova impostazione applicazione.
Nella casella Nome, nel riquadro Aggiungi/Modifica impostazioni dell’applicazione, immettere il seguente nome dell'opzione dell'operazione:
Flussi di lavoro.{yourWorkflowName}.OperationOptions
Nella casella Valore immettere il valore seguente: WithStatelessRunHistory
Per terminare questa attività, selezionare OK. Sulla barra degli strumenti del riquadro Configurazione selezionare Salva.
Per disabilitare la cronologia di esecuzione al termine, impostare la proprietà denominata Flusso di lavoro.{your-workflow-name}. OperationOptions su Nessuno, oppure eliminare la proprietà e il relativo valore.
Abilitare o aprire Application Insights dopo la distribuzione
Durante l'esecuzione del flusso di lavoro, l'app per la logica genera dati di telemetria e altri eventi. È possibile usare questi dati di telemetria per ottenere una migliore visibilità sull'esecuzione del flusso di lavoro e sul funzionamento del runtime di App per la logica in vari modi. È possibile monitorare il flusso di lavoro usando Application Insights, che fornisce dati di telemetria quasi in tempo reale (metriche in tempo reale). Questa funzionalità consente di analizzare più facilmente gli errori e i problemi di prestazioni quando si usano questi dati per diagnosticare i problemi, configurare avvisi e creare grafici.
Se le impostazioni di creazione e distribuzione dell'app per la logica supportano l'uso di Application Insights, è facoltativamente possibile abilitare la registrazione e la traccia diagnostica per il flusso di lavoro dell'app per la logica. È possibile farlo quando si crea la risorsa dell'app per la logica nel portale di Azure o dopo la distribuzione. È necessario avere un'istanza di Application Insights, ma è possibile creare questa risorsa in anticipo, quando si crea l'app per la logica o dopo la distribuzione. Facoltativamente, è anche possibile abilitare i dati di telemetria avanzati in Application Insights per flussi di lavoro Standard.
Abilitare Application Insights in un'app per la logica implementata
Nel portale di Azure trovare l'app per la logica distribuita.
Nel menu dell'app per la logica, in Impostazioni, selezionare Application Insights.
Nel riquadro Application Insights selezionare Attiva Application Insights.
Dopo l’aggiornamento del riquadro, nella parte inferiore, selezionare Applica>Sì.
Nel riquadro Application Insights, selezionareVisualizza dati di Application Insights.
All’apertura della dashboard di Application Insights, è possibile esaminare le metriche o i log per il flusso di lavoro dell'app per la logica. Ad esempio, per creare un grafico o eseguire query per i dati, nel menù delle risorse di Application Insights, in Monitoraggio, selezionare Metriche o log.
Apri Application Insights
Nel portale di Azure trovare l'app per la logica distribuita.
Nel menu dell'app per la logica, in Impostazioni, selezionare Application Insights.
Nel riquadro Application Insights, selezionareVisualizza dati di Application Insights.
All’apertura della dashboard di Application Insights, è possibile esaminare le metriche o i log per il flusso di lavoro dell'app per la logica. Ad esempio, per creare un grafico o eseguire query per i dati, nel menù delle risorse di Application Insights, in Monitoraggio, selezionare Metriche o log.
Visualizzare le connessioni
Quando si creano connessioni in un flusso di lavoro usando connettori gestiti da Microsoft, queste connessioni sono risorse separate di Azure con le proprie definizioni di risorse e sono ospitate in Azure globale multi tenant. I flussi di lavoro delle app per la logica Standard possono anche usare connettori del provider di servizi predefiniti che vengono eseguiti nativamente e sono basati sul runtime di App per la logica di Azure a tenant singolo. Per visualizzare e gestire queste connessioni, vedere Visualizzare le connessioni.
Arrestare o avviare le risorse dell'app per la logica
Seguire la procedura descritta in Disabilitare o abilitare le app per la logica.
Risoluzione dei problemi e degli errori
Nuovi trigger e azioni non sono disponibili nella selezione della finestra di progettazione per i flussi di lavoro creati in precedenza
App per la logica di Azure a tenant singolo supporta azioni predefinite per operazioni di funzioni di Azure, operazioni liquide e operazioni XML, ad esempio Convalida XML e Trasformazione XML. Tuttavia, per le app per la logica create in precedenza, queste azioni potrebbero non comparire nella finestra di progettazione da selezionare se l'app per la logica usa una versione obsoleta del bundle di estensione Microsoft.Azure.Functions.ExtensionBundle.Workflows.
Per risolvere il problema, seguire questa procedura per eliminare la versione obsoleta in modo che il bundle di estensioni possa eseguire automaticamente l'aggiornamento alla versione più recente.
Nota
Questa soluzione specifica si applica solo alle risorse dell'app per la logica Standard create tramite il portale di Azure, non alle app per la logica create e implementate tramite Visual Studio Code e l'estensione App per la logica di Azure (Standard). Vedere Trigger e azioni supportati non sono presenti nella finestra di progettazione in Visual Studio Code.
Nel portale di Azure arrestare l'app per la logica.
Selezionare Panoramica dal menu dell'app per la logica.
Sulla barra degli strumenti del riquadro Panoramica selezionare Arresta.
Nel menù dell'app per la logica, 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 bundle usando il prompt dei comandi. In alternativa, è possibile esplorare la struttura di directory visualizzata sopra la finestra della console.
Passare alla cartella seguente, che contiene le cartelle con le versioni per il bundle esistente:
...\home\data\Functions\ExtensionBundles\Microsoft.Azure.Functions.ExtensionBundle.Workflows
Eliminare la cartella della versione per il bundle esistente. Nella finestra della console è possibile eseguire questo comando in cui si sostituisce {bundle-version} con la versione esistente:
rm -rf {bundle-version}
Ad esempio:
rm -rf 1.1.3
Suggerimento
Se viene visualizzato un errore come "autorizzazione negata" o "file in uso", aggiornare la pagina nel browser e riprovare i passaggi precedenti fino all'eliminazione della cartella.
Nella portale di Azure tornare all'app per la logica e alla relativa pagina Panoramica e selezionare Riavvia.
Il portale ottiene e usa automaticamente il bundle più recente.