Cosa fare in Application Insights?

Per ricevere un messaggio di posta elettronica quando...

Inviare un messaggio di posta elettronica se il sito non è disponibile

Impostare un test web di disponibilità.

Inviare un messaggio di posta elettronica se il sito è sovraccarico

Impostare un avviso per il tempo di risposta del server. Una soglia compresa tra 1 e 2 secondi dovrebbe risolvere il problema.

L'applicazione potrebbe inoltre dare segni di difficoltà tramite la restituzione di codici di errore. Impostare un avviso per le richieste non riuscite.

Se si desidera impostare un avviso per le eccezioni del server, è necessario effettuare alcune impostazioni aggiuntive per visualizzare i dati.

Inviare un messaggio di posta elettronica in caso di eccezioni

  1. Configurare il monitoraggio delle eccezioni
  2. Impostare un avviso sulla metrica relativa al conteggio del numero di eccezioni

Inviare un messaggio di posta elettronica per un evento generato dall'app

Si supponga che si desidera ricevere un messaggio di posta elettronica quando si verifica un evento specifico. Application Insights non fornisce direttamente questa funzionalità, ma è possibile inviare un avviso quando una metrica supera una soglia.

Gli avvisi possono essere impostati per metriche personalizzate, anche se non per gli eventi personalizzati. Scrivere codice per potenziare una metrica quando si verifica l'evento:

telemetry.TrackMetric("Alarm", 10);

oppure:

var measurements = new Dictionary<string,double>();
measurements ["Alarm"] = 10;
telemetry.TrackEvent("status", null, measurements);

Poiché gli avvisi possono avere due stati, è necessario inviare un valore basso quando si presume che l'avviso sia terminato:

telemetry.TrackMetric("Alarm", 0.5);

Creare un grafico in Esplora metriche per visualizzare l'allarme:

Impostare un avviso da attivare quando la metrica supera un valore medio per un breve periodo:

Impostare il periodo medio sul valore minimo.

Verranno ricevuti messaggi di posta elettronica quando la metrica è maggiore o minore della soglia.

Alcune informazioni da considerare:

  • Un avviso dispone di due stati: "Avviso" e "Integro". Lo stato viene valutato solo quando viene ricevuta una metrica.
  • Un messaggio di posta elettronica viene inviato solo quando lo stato cambia. Questo è il motivo per cui è necessario inviare sia metriche con valori alti che metriche con valori bassi.
  • Per valutare l'avviso, viene eseguita la media dei valori ricevuti nel periodo precedente. Ciò si verifica ogni volta che viene ricevuta una metrica. Per questo motivo è possibile che i messaggi di posta elettronica vengano inviati più frequentemente rispetto al periodo impostato.
  • Poiché vengono inviati messaggi di posta elettronica sia per avvisi con stato "Avviso" e che per avvisi con stato "Integro", è possibile riconsiderare l'evento unico come una condizione con due stati. Ad esempio, anziché un evento "processo completato", creare una condizione "processo in corso", dove è possibile ricevere messaggi di posta elettronica all'inizio e alla fine di un processo.

Impostare automaticamente gli avvisi

Usare PowerShell per creare nuovi avvisi

Usare PowerShell per gestire Application Insights

Separare la telemetria da diverse versioni

  • Più ruoli in un'app: usare una singola risorsa di Application Insights e filtrare su cloud_Rolename. Altre informazioni
  • Separazione di sviluppo, test e versioni di rilascio: usare diverse risorse di Application Insights. Acquisire le chiavi di strumentazione da web.config. Altre informazioni
  • Creazione di rapporti sulle versioni di compilazione: aggiungere una proprietà usando un inizializzatore di telemetria. Altre informazioni

Monitorare i server back-end e le app desktop

Usare il modulo di Windows Server SDK.

Visualizzare i dati

Dashboard con metriche da più app

  • In Esplora metrichepersonalizzare il grafico e salvarlo come preferito. Aggiungerlo al dashboard di Azure.

Dashboard con dati provenienti da altre fonti e Application Insights

Or

Filtrare gli utenti anonimi o autenticati

Se gli utenti effettuano l'accesso, è possibile impostare l' ID dell'utente autenticato. Questa operazione non viene eseguita automaticamente.

È quindi possibile:

  • Eseguire ricerche in base a ID utente specifici

  • Filtrare le metriche in base a utenti anonimi o autenticati

Modificare i nomi della proprietà o i valori

Creare un filtro. Consente di modificare o filtrare la telemetria prima che venga inviata dall'app ad Application Insights.

Elencare utenti specifici e il relativo uso

Se si desidera cercare utenti specifici, è possibile impostare l'ID dell'utente autenticato.

Se si desidera un elenco di utenti con i dati quali, ad esempio, le pagine visualizzate o la frequenza di accesso, sono disponibili due opzioni:

  • Impostare l'ID dell'utente autenticato, eseguire l'esportazione in un database e usare gli strumenti appropriati per analizzare i dati utente.
  • Se si dispone solo di un numero limitato di utenti, inviare gli eventi o le metriche personalizzati usando i dati di interesse quali, ad esempio, il valore della metrica o il nome dell'evento, quindi impostando l'ID utente come proprietà. Per analizzare le visualizzazioni di pagina, sostituire la chiamata standard JavaScript trackPageView. Per analizzare i dati di telemetria sul lato server, usare un inizializzatore di telemetria per aggiungere l'ID utente a tutti i dati di telemetria del server. È quindi possibile filtrare e segmentare le metriche e le ricerche in base all'ID utente.

Ridurre il traffico dall'app ad Application Insights

  • In ApplicationInsights.configdisabilitare tutti i moduli non necessari, come gli agenti di raccolta del contatore delle prestazioni.
  • Usare Campionamento e filtri nell’SDK.
  • Nelle pagine Web limitare il numero di chiamate Ajax segnalato per ogni visualizzazione della pagina. Nel frammento di script dopo instrumentationKey:... inserire: ,maxAjaxCallsPerView:3 (o un numero adatto).
  • Se si usa TrackMetric, calcolare l'aggregazione di batch di valori delle metriche prima di inviare il risultato. Un overload di TrackMetric() esegue questa operazione.

Altre informazioni su prezzi e quote.

Disabilitare telemetria

Per avviare e arrestare in modo dinamico la raccolta e la trasmissione di dati di telemetria dal server:


    using  Microsoft.ApplicationInsights.Extensibility;

    TelemetryConfiguration.Active.DisableTelemetry = true;

Per disabilitare gli agenti di raccolta standard selezionati - ad esempio, i contatori delle prestazioni, delle richieste HTTP o delle dipendenze - eliminare o impostare come commento le righe pertinenti in Applicationinsights.config. È possibile eseguire questa operazione, ad esempio, se si vogliono inviare i propri dati TrackRequest.

Visualizzare i contatori delle prestazioni di sistema

Tra le metriche che è possibile visualizzare in Esplora metriche è disponibile un set di contatori delle prestazioni di sistema. Esiste un pannello predefinito denominato Server in cui sono visualizzati alcuni set.

Aprire la risorsa Application Insights e fare clic su Server.

Se non vengono visualizzati dati dei contatori delle prestazioni

  • Server IIS sul proprio computer o in una macchina virtuale. Installare Status Monitor.
  • Sito Web di Azure - i contatori delle prestazioni non sono ancora supportati. Esistono diverse metriche che è possibile ottenere come una parte standard del Pannello di controllo del sito Web di Azure.
  • Server Unix - Installare collectd

Per visualizzare altri contatori delle prestazioni