Il presente articolo è stato tradotto automaticamente.

Visual Studio 2013

Nuove prospettive per lo sviluppo con Application Insights

Charles Sterling

Il ritmo di consegna del software è aumentato drammaticamente negli ultimi anni. Gli sviluppatori si sono evoluti dalla cascata di agile a cadenza di rilascio continuo di oggi. In tal modo, ha intensificato la necessità per il feedback migliore, più veloce e più diretto. Reattività è il nome del gioco. Decisori necessari strumenti che forniscono analitica integrata e rendono immediatamente disponibili per l'intero team dati tempestivi.

Il nuovo Microsoft applicazione Insights, annunciato in occasione del lancio di Visual Studio 2013, è una suite di servizi progettata intorno la necessità di squadre ad alte prestazioni consegna domande chiave ha Risposta: La nostra applicazione è disponibile? Esegue? Sono fornire le caratteristiche nostri utenti vogliamo?

Intuizioni di applicazione non è limitata alle operazioni. Per eliminare l'handoff e accelerare il flusso di informazioni in tutta la squadra, si integra con gli sviluppatori di strumenti e operazioni già utilizzano —Visual Studio e Visual Studio Online. Ciò rende più semplice per tutti i membri del team ottenere le informazioni di cui hanno bisogno.

Applicazione Insights è progettato per funzionare con servizi creati in Microsoft .NET Framework, Java, servizi di Windows Azure, siti Web, applicazioni Windows Store e le applicazioni Windows Phone 8. Completo monitoraggio end-to-end, si ottiene una vera foto 360 gradi della vostra applicazione, non solo piccoli pezzi di dati isolati.

Per iniziare con applicazione Insights

Iniziare con intuizioni di applicazione è semplice. Per aggiungere la telemetria di intuizioni di applicazione Web, Windows Phone o applicazioni Windows Store, scaricare gli strumenti di applicazione Insights per estensione Visual Studio , che si trova nella galleria Visual Studio (aka.ms/aivsix). Le versioni future di Visual Studio non richiedono questo ulteriore passaggio.

Per i nuovi progetti in Visual Studio 2013, selezionare Aggiungi applicazione Insights al progetto quando si crea un nuovo progetto (vedere Figura 1).

Add Application Insights to New Visual Studio 2013 Projects
Figura 1 Aggiungi applicazione Insights per nuovi progetti di Visual Studio 2013

Per utilizzare l'applicazione Insights con le applicazioni esistenti, fare clic destro sul progetto e scegliere Aggiungi applicazioni approfondimenti telemetria al progetto (vedere Figura 2).

Right-Click to Add Application Insights to an Existing Project
Figura 2 tasto destro del mouse per aggiungere l'applicazione Insights a un progetto esistente

Dopo aver aggiunto l'applicazione Insights, il progetto avrà tre nuovi nodi con collegamenti ai dati di monitoraggio della disponibilità, monitoraggio delle prestazioni e utilizzo Analitica in Visual Studio Online (Vedi Figura 3).

New Nodes Appear in the Enabled Project
Figura 3 nuovi nodi visualizzati nel progetto abilitato

Implementare l'utilizzo di monitoraggio

Una volta che hai aggiunto intuizioni di applicazione per un progetto nuovo o esistente, utilizzo di monitoraggio su applicazioni Web, Windows Store e Windows Phone viene attivato automaticamente. Per anziani e non-­Visual Studio applicazioni Web, è possibile aggiungere questa stessa funzionalità inserendo un blocco di JavaScript nella vostra applicazione. Si può arrivare a questo blocco JavaScript facendo clic su Aggiungi applicazione (vedere Figura 4) o andare a pannello di controllo e selezionando Get chiavi di configurazione e download.

Select Add Application to Add JavaScript Block to Older Apps
Figura 4 Selezionare Aggiungi per aggiungere il blocco JavaScript alla vecchi Apps

Attuare il monitoraggio delle prestazioni

Nonostante il nome, monitoraggio delle prestazioni dà una tonnellata di informazioni oltre i soli dati relativi alle prestazioni. Esso ti avviserà di eccezioni, informazioni sullo stack di chiamata, informazioni sulle dipendenze, allocazione di oggetto e anche informazioni circa il sotto­infrastruttura di menzogne. Microsoft Monitoring Agent (MMA) raccoglie automaticamente anche i log di IntelliTrace per eccezioni e lente chiamate nel codice. Nella maggior parte dei casi, è possibile attivare il monitoraggio delle prestazioni semplicemente installando MMA, che trova in aka.ms/aimma.

Quando si installa MMA, sarà di default per il monitoraggio di tutte le applicazioni Web sul tuo computer. Questo è probabilmente bene per una scatola di sviluppo, ma potrebbe non essere ideale per i server di produzione con molte applicazioni Web. MMA non dovrebbe causare più di un degrado delle prestazioni il 5 per cento mentre l'applicazione di monitoraggio.

Per abilitare MMA applicazioni che aggiungere in seguito, è possibile attivare facilmente manualmente monitoraggio tramite un comando Windows PowerShell :

Start-WebApplicationMonitoring -name "www.microsoft.com/games" -mode Monitor -outputchannel cloud

In futuro versioni di MMA e Visual Studio, non sarà necessario fare questo passo.

È anche possibile attivare le prestazioni di applicazioni di monitoraggio su Java e Windows Azure. Il modo più semplice per iniziare è quello di fare clic su Aggiungi applicazione nel portale applicazione intuizioni, come indicato in precedenza per l'implementazione di monitoraggio utilizzo.

Attuare il monitoraggio della disponibilità

Monitoraggio disponibilità funziona per qualsiasi applicazione Web, indipendentemente dalla piattaforma su cui è in esecuzione. Solo deve essere accessibile tramite Internet. È possibile verificare la disponibilità e le prestazioni dell'applicazione Web da tutto il mondo. Questo modulo è anche il modo più semplice ottenere lavoro.

Quando si seleziona il menu di disponibilità nell'ambito di applicazione Insights, verrà richiesto di fornire l'URL dell'applicazione Web. Questo creerà un semplice monitor sintetici basati su URL con una sola posizione di monitoraggio.

Se avete bisogno di monitorare le operazioni più sofisticate, probabilmente sarete meglio usare un Visual Studio codificati test delle prestazioni Web. Il monitor sintetico è basato sulla stessa funzionalità di registrazione comunemente utilizzata per la verifica delle applicazioni Web di carico. Ciò consente di testare un complesso insieme di azioni. Per creare un singolo URL o sintetico monitor multi-step, fare clic su Aggiungi nuovo monitor sintetici sull'icona verde e configurare le impostazioni desiderate (vedere Figura 5).

Configure the Settings for a New Synthetic Monitor
Figura 5 configurare le impostazioni per un nuovo Monitor sintetico

Mettere le intuizioni di applicazione al lavoro

Nell'ultimo anno, quasi 100 squadre interne di Microsoft ed esperti del settore esterni provato le prime versioni dell'applicazione Insights e fornito feedback come parte di un programma tecnico formale di adozione. Alcuni di essi ha scoperto era sorprendente il team di sviluppo, soprattutto il forte interesse e impegno dai proprietari del prodotto e i membri del team non tecnici.

Early adopters concordato che un valore di chiave di applicazione Insights è la capacità di accelerare il ciclo di sviluppo portando tutte queste informazioni analitica in un'unica posizione in Visual Studio Online.

Misurare una campagna Web uno dei primi clienti esterni a guardare le intuizioni di applicazione era Wintellect — una società di consulenza e formazione. Volevano capire l'impatto delle descrizioni dei corsi per il loro nuovo prodotto di formazione on-demand, WintellectNOW.

Utilizzando la relazione di pagine viste nell'applicazione Insights, Wintellect sviluppatori sono stati in grado di aggiungere una funzione JavaScript al Iscriviti ora pulsante, simile a questo:

function trackCourse()
{
  window.__da.trackEvent("Course",
     window.location.hostname +
     window.location.pathname,
     {"CourseID": "Test401"},
     {"RatingValue": 400});
}

Questo lascia loro misurare e visualizzare descrizioni dei corsi erano più efficacemente guida effettive registrazioni. Per ulteriori informazioni sull'implementazione di eventi personalizzati in applicazione Insights, vedere aka.ms/aijs.

Misurare traffico Web globale Wintellect è stato programmato per esporre al TechEd 2013 Europa a Madrid, Spagna. Il personale aziendale ha voluto un modo semplice per valutare se la presenza dell'azienda aumenterebbe la consapevolezza della propria offerta sul mercato europeo.

L'azienda imposta report di utilizzo tramite l'applicazione Insights e rispetto la settimana prima TechEd alla settimana dopo. Traffico dall'Europa è aumentato del 7 per cento, e raddoppiato il suo traffico dalla Spagna. Wintellect non ha bisogno di alcuno sforzo speciale dagli sviluppatori per misurare questi risultati, quindi il suo team di tecnici sono stati in grado di rimanere focalizzati sui risultati finali.

Trovare semplificata, Fix e rilascio

Applicazione Insights è al lavoro presso Microsoft pure. I tecnici di servizio incaricati il principale sito di Web di Microsoft e homepage gestire oltre 400 applicazioni nella pratica quotidiana. Loro massima priorità è ridurre il tempo da scoprire un problema per ottenere una correzione sul posto. Dalla creazione di dashboard e avvisi con applicazione Insights, ottengono in tempo reale notifica di mancata disponibilità prove, eventi di prestazioni o un indice di prestazioni degradante. Questo aiuta gli ingegneri di risolvere i problemi prima che persino i clienti notano che qualcosa è sbagliato.

Una squadra di istituire un monitoraggio della disponibilità con un massimo ammissibile runtime, con un avviso per indicare qualsiasi momento la soglia è attraversata. Gli ingegneri possono quindi accertare la causa di guasto direttamente all'interno della visualizzazione Web, o scaricarlo sul Visual Studio e vederlo come un risultato di Test Web. La relazione sintetica Monitor indica questi test solo iniziarono fallendo dopo aver effettuato una distribuzione. Poi ha continuato a rincorrere con successo un'altra distribuzione. Circa quattro ore dopo, sono state apportate modifiche alla configurazione 11. Essi erano in grado di legare la questione di disponibilità direttamente a effettivi cambiamenti di codice e la configurazione. Questo li ha aiutati a diagnosticare la causa radice dell'evento subito.

Con intuizioni di applicazione, è possibile ottimizzare le applicazioni prima che essi generano anche un avviso. Nel cruscotto, ci sono avvisi attivi, eccezione eventi, eventi di prestazioni, memoria eventi e grafici di Performance e affidabilità. Tutti questi parametri forniscono informazioni facilmente comprensibili per un team di ingegneri cercando di migliorare le sue applicazioni.

Selezionando qualsiasi di queste piastrelle vi porterà ai dati più probabili di portare ad un'azione. Ad esempio, facendo clic sul grafico delle prestazioni nell'applicazione Insights Dashboard (Figura 6) vi porterà alla pagina prestazioni (Figura 7). In questo esempio, si può vedere che c'è una forte correlazione tra le dipendenze, un Web service e tempi di risposta.

The Application Insights Dashboard
Figura 6 l'applicazione Insights Dashboard

The Application Insights Performance Page
Figura 7 la pagina applicazione Insights prestazioni

Clicca sulla memoria, eccezione o prestazioni eventi piastrelle nel cruscotto per arrivare alla pagina eventi. Qui, è possibile filtrare, selezionare, aprire la sessione di diagnostica della memoria, avviare una sessione di debug IntelliTrace o Mostra l'insieme di modifiche che ha causato l'evento in Visual Studio.

Conclusioni

Questi sono solo alcuni esempi di come team di sviluppo utilizza applicazione Insights a collaborare più strettamente con le loro squadre di operazioni per fornire più rapidamente il software migliore. È possibile accedere a intuizioni di applicazione tramite Visual Studio Online (visualstudio.com).

In un prossimo articolo, mi occuperò di integrazione basata su cloud carico test con applicazione Insights. Per ulteriori informazioni sulla creazione di test Web, vai a bit.ly/1im10YI. Per ulteriori informazioni sulla disponibilità di monitoraggio con applicazione Insights, vai a bit.ly/1gxgLYk.

Con la facilità di aggiunta di monitoraggio del codice, la stretta integrazione con Visual Studio Online e il risparmio di tempo, sicuramente ti consigliamo di controllare questi scenari e rendersi conto di cosa può realizzare con applicazione Insights.

Charles Sterling è stato di Microsoft per 20 anni. Prima di Microsoft è stato un biologo marino, lavorando per la pesca marittima nazionale degli Stati Uniti facendo ricerca mammiferi marini sul mare di Bering. Dopo un tour di sei anni in Australia come un product manager di Microsoft, Sterling è attualmente in Redmond come senior program manager del team di sviluppo di Visual Studio . Contattarlo al chass@microsoft.com.

Grazie ai seguenti esperti tecnici per la revisione di questo articolo:
John Robbins è un cofondatore di Wintellect, dove dirige il lato di servizi di consulenza e debug del business. Egli inoltre viaggia per il mondo insegnando suoi corsi Mastering debug .NET e Mastering Windows Debugging affinché gli sviluppatori ovunque può imparare le tecniche che usa per risolvere i problemi di software più brutte che l'uomo conosciuti.
Cheryl Hammond è un consulente di ALM e conduce la squadra di pratiche a cadenza di nord-ovest, concentrandosi sui modi in cui agilità, architettura e pratiche test di migliorare la vita degli sviluppatori, rafforzare squadre e consegnare il software migliore.