Monitorare lo stato, configurare la registrazione diagnostica e attivare gli avvisi per App per la logica di Azure

Dopo avere creato ed eseguito un'app per la logica, è possibile controllarne la cronologia delle esecuzioni, la cronologia dei trigger, lo stato e le prestazioni. Per il monitoraggio degli eventi in tempo reale e il debug avanzato, configurare la registrazione diagnostica per l'app per la logica. In questo modo è possibile trovare e visualizzare gli eventi, ad esempio eventi di attivazione, eventi di esecuzione ed eventi di azione. È anche possibile usare questi dati diagnostici con altri servizi, ad esempio Archiviazione di Azure e Hub eventi di Azure.

Per ottenere notifiche sugli errori o su altri possibili problemi, configurare gli avvisi. È ad esempio possibile creare un avviso che rileva "quando più di cinque esecuzioni in un'ora hanno esito negativo". È anche possibile configurare il monitoraggio, la verifica e la registrazione a livello di codice usando impostazioni e proprietà degli eventi di Diagnostica di Azure.

Visualizzare la cronologia di esecuzioni e trigger per l'app per la logica

  1. Per trovare l'app per la logica nel portale di Azure scegliere Altri servizi dal menu principale di Azure. Nella casella di ricerca cercare "app per la logica" e scegliere App per la logica.

    Trovare l'app per la logica

    Il portale di Azure visualizza tutte le app per la logica associate alla sottoscrizione di Azure.

  2. Selezionare l'app per la logica, quindi scegliere Panoramica.

    Il portale di Azure visualizza la cronologia delle esecuzioni e la cronologia dei trigger per l'app per la logica, ad esempio:

    Cronologia delle esecuzioni e cronologia dei trigger delle app per la logica

    • Cronologia esecuzioni visualizza tutte le esecuzioni per l'app per la logica.
    • Cronologia trigger visualizza tutte le attività dei trigger per l'app per la logica.

    Per le descrizioni degli stati, vedere Risolvere i problemi relativi all'app per la logica.

    Suggerimento

    Se non si trovano i dati previsti, scegliere Aggiorna sulla barra degli strumenti.

  3. Per visualizzare i passaggi da una specifica esecuzione, selezionarla in Cronologia esecuzioni.

    La vista di monitoraggio mostra ogni passaggio di tale esecuzione, ad esempio:

    Azioni per una specifica esecuzione

  4. Per ottenere altri dettagli sull'esecuzione, scegliere Dettagli esecuzione. Queste informazioni riepilogano i passaggi, lo stato, gli input e gli output per l'esecuzione.

    Scegliere "Dettagli esecuzione"

    È ad esempio possibile ottenere l'ID di correlazione dell'esecuzione, che potrebbe essere necessario quando si usa l'API REST per App per la logica.

  5. Per ottenere informazioni dettagliate su un passaggio specifico, scegliere il passaggio. È ora possibile esaminare dettagli come input, output ed eventuali errori verificatisi per tale passaggio, ad esempio:

    Dettagli del passaggio

    Nota

    Tutti i dettagli ed eventi di runtime vengono crittografati nel servizio App per la logica. Vengono decrittografati solo quando un utente richiede di visualizzare i dati. È anche possibile controllare l'accesso a questi eventi con il controllo degli accessi in base al ruolo di Azure.

  6. Per ottenere informazioni dettagliate su un evento di attivazione specifico, tornare al riquadro Panoramica. In Cronologia trigger selezionare l'evento di attivazione. È ora possibile esaminare dettagli come input e output, ad esempio:

    Dettagli dell'output dell'evento di attivazione

Attivare la registrazione diagnostica per l'app per la logica

Per il debug avanzato con dettagli ed eventi di runtime, è possibile configurare la registrazione diagnostica con Azure Log Analytics. Log Analytics è un servizio di Operations Management Suite (OMS) che consente di monitorare gli ambienti cloud e locali per garantirne la disponibilità e le prestazioni.

Prima di iniziare, è necessario avere un'area di lavoro di OMS. Informazioni su come creare un'area di lavoro di OMS.

  1. Nel portale di Azure trovare e selezionare l'app per la logica.

  2. Nel menu del pannello dell'app per la logica, in Monitoraggio scegliere Diagnostica > Impostazioni di diagnostica.

    Andare a Monitoraggio, Diagnostica, Impostazioni di diagnostica

  3. In Impostazioni di diagnostica scegliere .

    Attivare i log di diagnostica

  4. Selezionare ora l'area di lavoro di OMS e la categoria di eventi per la registrazione, come indicato:

    1. Selezionare Invia a Log Analytics.
    2. In Log Analytics scegliere Configura.
    3. In Aree di lavoro OMS selezionare l'area di lavoro di OMS da usare per la registrazione.
    4. In Log selezionare la categoria WorkflowRuntime.
    5. Scegliere l'intervallo di metrica.
    6. Al termine dell'operazione, scegliere Salva.

    Selezionare l'area di lavoro di OMS e i dati per la registrazione

È ora possibile trovare eventi e altri dati per eventi di attivazione, eventi di esecuzione ed eventi di azione.

Trovare eventi e dati per l'app per la logica

Per trovare e visualizzare gli eventi nell'app per la logica, ad esempio eventi di attivazione, eventi di esecuzione ed eventi di azione, seguire questa procedura.

  1. Nel portale di Azure scegliere Altri servizi. Cercare "Log Analytics", quindi scegliere Log Analytics, come illustrato qui:

    Scegliere "Log Analytics"

  2. In Log Analytics trovare e selezionare l'area di lavoro di OMS.

    Selezionare l'area di lavoro di OMS

  3. In Gestione scegliere Portale di OMS.

    Scegliere "Portale di OMS"

  4. Nella home page di OMS scegliere Ricerca log.

    Nella home page di OMS scegliere "Ricerca log"

    -oppure-

    Dal menu di OMS scegliere "Ricerca log"

  5. Nella casella di ricerca specificare un campo che si vuole trovare e premere INVIO. Quando si inizia a digitare, OMS visualizza le possibili corrispondenze e operazioni che è possibile usare.

    Per trovare, ad esempio, i primi 10 eventi che si sono verificati, immettere e selezionare questa query di ricerca: Category=WorkflowRuntime |top 10

    Immettere la stringa di ricerca

    Altre informazioni su come trovare i dati in Log Analytics.

  6. Nella barra a sinistra della pagina dei risultati scegliere l'intervallo di tempo che si vuole visualizzare. Per affinare la query aggiungendo un filtro, scegliere +Aggiungi.

    Scegliere l'intervallo di tempo per i risultati della query

  7. In Aggiungi filtri immettere il nome del filtro per trovare quello desiderato. Selezionare il filtro e scegliere +Aggiungi.

    L'esempio usa la parola "status" per trovare gli eventi non riusciti in AzureDiagnostics. Qui il filtro per status_s è già selezionato.

    Selezionare il filtro

  8. Nella barra a sinistra selezionare il valore del filtro che si vuole usare e scegliere Applica.

    Selezionare il valore del filtro, scegliere "Applica"

  9. Tornare ora alla query che si sta creando. La query viene aggiornata con il filtro e il valore selezionati. Vengono ora filtrati anche i risultati precedenti.

    Tornare alla query con i risultati filtrati

  10. Per salvare la query per un uso futuro, scegliere Salva. Informazioni su come salvare la query.

Estendere l'uso dei dati di diagnostica con altri servizi

Con Azure Log Analytics, è possibile usare in modo diverso i dati di diagnostica dell'app per la logica con altri servizi di Azure, ad esempio:

È quindi possibile eseguire il monitoraggio in tempo reale usando i dati di telemetria e l'analisi da altri servizi, ad esempio Analisi di flusso di Azure e Power BI, ad esempio:

In base alle opzioni che si vuole configurare, assicurarsi prima di tutto di creare un account di archiviazione di Azure o di creare un hub eventi di Azure. Selezionare quindi le opzioni per la posizione a cui si vogliono inviare i dati di diagnostica:

Inviare i dati all'hub di eventi o all'account di archiviazione di Azure

Nota

I periodi di conservazione si applicano solo quando si sceglie di usare un account di archiviazione.

Configurare gli avvisi per l'app per la logica

Per monitorare metriche specifiche o le soglie superate per l'app per la logica, configurare gli avvisi in Azure. Informazioni sulle metriche in Azure.

Per configurare gli avvisi senza Azure Log Analytics, seguire questa procedura. Per azioni e criteri di avviso più avanzati, configurare anche Log Analytics.

  1. Nel menu del pannello dell'app per la logica, in Monitoraggio scegliere Diagnostica > Regole di avviso > Aggiungi avviso, come illustrato qui:

    Aggiungere un avviso per l'app per la logica

  2. Nel pannello Aggiungi una regola di avviso creare l'avviso come indicato:

    1. In Risorsa selezionare l'app per la logica, se non è già selezionata.
    2. Specificare un nome e una descrizione per l'avviso.
    3. Selezionare una metrica o un evento di cui si vuole tenere traccia.
    4. Selezionare una condizione, specificare una soglia per la metrica e selezionare il periodo per il monitoraggio di questa metrica.
    5. Scegliere se inviare posta per l'avviso.
    6. Specificare eventuali altri indirizzi di posta elettronica a cui inviare l'avviso. È anche possibile specificare l'URL di un webhook a cui si vuole inviare l'avviso.

    Questa regola, ad esempio, invia un avviso quando cinque o più esecuzioni in un'ora hanno esito negativo:

    Creare una regola di avviso per la metrica

Suggerimento

Per eseguire un'app per la logica da un avviso, è possibile includere il trigger della richiesta nel flusso di lavoro, che consente di eseguire attività come le seguenti:

Impostazioni e dettagli degli eventi di Diagnostica di Azure

Ogni evento di diagnostica ha dettagli sull'app per la logica e sull'evento stesso, ad esempio lo stato, l'ora di inizio, l'ora di fine e così via. Per configurare a livello di codice il monitoraggio, la verifica e la registrazione, è possibile usare questi dettagli con l'API REST per App per la logica di Azure e l'API REST per Diagnostica di Azure.

L'evento ActionCompleted, ad esempio, ha le proprietà clientTrackingId e trackedProperties che è possibile usare per la verifica e il monitoraggio:

{
    "time": "2016-07-09T17:09:54.4773148Z",
    "workflowId": "/SUBSCRIPTIONS/<subscription-ID>/RESOURCEGROUPS/MYRESOURCEGROUP/PROVIDERS/MICROSOFT.LOGIC/WORKFLOWS/MYLOGICAPP",
    "resourceId": "/SUBSCRIPTIONS/<subscription-ID>/RESOURCEGROUPS/MYRESOURCEGROUP/PROVIDERS/MICROSOFT.LOGIC/WORKFLOWS/MYLOGICAPP/RUNS/08587361146922712057/ACTIONS/HTTP",
    "category": "WorkflowRuntime",
    "level": "Information",
    "operationName": "Microsoft.Logic/workflows/workflowActionCompleted",
    "properties": {
        "$schema": "2016-06-01",
        "startTime": "2016-07-09T17:09:53.4336305Z",
        "endTime": "2016-07-09T17:09:53.5430281Z",
        "status": "Succeeded",
        "code": "OK",
        "resource": {
            "subscriptionId": "<subscription-ID>",
            "resourceGroupName": "MyResourceGroup",
            "workflowId": "cff00d5458f944d5a766f2f9ad142553",
            "workflowName": "MyLogicApp",
            "runId": "08587361146922712057",
            "location": "westus",
            "actionName": "Http"
        },
        "correlation": {
            "actionTrackingId": "e1931543-906d-4d1d-baed-dee72ddf1047",
            "clientTrackingId": "<my-custom-tracking-ID>"
        },
        "trackedProperties": {
            "myTrackedProperty": "<value>"
        }
    }
}
  • clientTrackingId: se non specificata, Azure genera automaticamente questo ID e correla gli eventi in un'esecuzione dell'app per la logica, inclusi eventuali flussi di lavoro annidati chiamati dall'app per la logica. È possibile specificare manualmente questo ID da un trigger passando un'intestazione x-ms-client-tracking-id con il valore dell'ID personalizzato nella richiesta del trigger. È possibile usare un trigger di richiesta, un trigger HTTP o un trigger webhook.

  • trackedProperties: per tenere traccia degli input o degli output nei dati di diagnostica, è possibile aggiungere le proprietà rilevate alle azioni nella definizione JSON dell'app per la logica. Le proprietà rilevate possono tenere traccia solo di singoli input e output di azioni, ma è possibile usare le proprietà correlation degli eventi per correlare più azioni in un'esecuzione.

    Per tenere traccia di una o più proprietà, aggiungere la sezione trackedProperties e le proprietà desiderate alla definizione dell'azione. Si supponga, ad esempio, di voler tenere traccia di dati come un "ID ordine" nella telemetria:

    "myAction": {
      "type": "http",
      "inputs": {
          "uri": "http://uri",
          "headers": {
              "Content-Type": "application/json"
          },
          "body": "@triggerBody()"
      },
      "trackedProperties": {
          "myActionHTTPStatusCode": "@action()['outputs']['statusCode']",
          "myActionHTTPValue": "@action()['outputs']['body']['<content>']",
          "transactionId": "@action()['inputs']['body']['<content>']"
      }
    }
    

Passaggi successivi