Procedura dettagliata: utilizzo dell'analisi in Visual Web Developer per individuare errori nelle pagine Web
Aggiornamento: novembre 2007
Esistono numerosi modi per rilevare gli errori in una pagina Web ASP.NET, tra i quali quello che utilizza il debugger e l'analisi. L'analisi consente di visualizzare i messaggi sulle operazioni che si verificano durante l'elaborazione della pagina e può includere eventuali informazioni che si sceglie di visualizzare. L'analisi inoltre fornisce informazioni su i dati che vengono scambiati tramite il server e il browser. Questi dati includono dettagli di controllo, variabili server, nome utente, cookie e così via. In questa procedura dettagliata viene illustrato come utilizzare l'analisi.
L'analisi è utile quando l'utilizzo del debugger si rivela poco pratico o inopportuno; ad esempio, il debugger potrebbe non essere disponibile poiché le pagine sono in esecuzione su un server remoto. L'analisi, inoltre, facilita la visualizzazione di informazioni, quali l'intestazione HTTP non disponibile esplicitamente nel debugger. Per informazioni sul debug, vedere Procedura dettagliata: debug di pagine Web in Visual Web Developer.
In questa procedura dettagliata verrà utilizzata l'analisi. Verrà creata una pagina Web in cui all' utente viene richiesto il nome che quindi viene visualizzato. La pagina inoltre memorizza il nome in un cookie consentendo pertanto all'utente di non doverlo immettere una seconda volta.
Nota: |
---|
In un'applicazione di produzione è necessario che la tecnica ottimale per la memorizzazione delle informazioni personali utilizzi le proprietà di profilo ASP.NET. Per informazioni dettagliate, vedere Cenni preliminari sulle proprietà dei profili ASP.NET. L'utilizzo di un cookie in questa procedura dettagliata, tuttavia, semplifica il codice consentendo di concentrarsi sull'analisi. |
In questa procedura dettagliata verranno introdotti deliberatamente alcuni errori; quindi si utilizzerà l'analisi per controllare lo stato dell'elaborazione della pagina in modo da diagnosticarne gli errori.
Di seguito sono elencate le attività illustrate nella procedura dettagliata:
Attivazione dell'analisi per una singola pagina.
Lettura dell'output di analisi.
Visualizzazione delle informazioni di analisi personalizzate.
Visualizzazione delle informazioni di analisi in una finestra di analisi separata.
Creazione degli output di analisi personalizzati.
Prerequisiti
Per completare questa procedura dettagliata, è necessario disporre dei seguenti elementi:
Strumento di sviluppo Web Microsoft Visual Web Developer.
.NET Framework.
Per questa procedura dettagliata si presuppone una conoscenza generale dell'utilizzo di Visual Web Developer. Per un'introduzione a Visual Web Developer, vedere Procedura dettagliata: creazione di una pagina Web di base in Visual Web Developer.
Creazione del sito Web
Se un sito Web è già stato creato in Visual Web Developer completando Procedura dettagliata: creazione di una pagina Web di base in Visual Web Developer, è possibile utilizzare quel sito Web e passare a "Aggiunta di controlli" più avanti nella procedura dettagliata. In caso contrario, creare un sito e una pagina Web nuovi attenendosi alla procedura riportata di seguito.
Nota: |
---|
In questa procedura dettagliata si presuppone l'utilizzo di una pagina ASP.NET con un file di codice sottostante per il relativo codice. |
Per creare un sito Web di file system
Aprire Visual Web Developer.
Scegliere Nuovosito Web dal menu File.
Viene visualizzata la finestra di dialogo Nuovo sito Web.
In Modelli Visual Studio installati fare clic su Sito Web ASP.NET.
Nella casella Percorso situata più a destra, immettere il nome della cartella in cui salvare le pagine del sito Web.
Digitare, ad esempio, il nome cartella C:\WebSites.
Nell'elenco Linguaggio scegliere il linguaggio di programmazione da utilizzare.
Scegliere OK.
In Visual Web Developer vengono create la cartella e una nuova pagina denominata Default.aspx.
Aggiunta di una pagina
Se si sta utilizzando un sito Web esistente, è possibile creare una nuova pagina. Se si dispone già di una pagina da utilizzare per questa procedura dettagliata, passare alla sezione successiva.
Per creare una nuova pagina
In Esplora soluzioni fare clic con il pulsante destro del mouse sul nome del sito Web e quindi scegliere Aggiungi nuovo elemento.
Nella finestra di dialogo Aggiungi nuovo elemento <Path>, in Modelli Visual Studio installati fare clic su Web Form.
Nella casella Nome digitare FirstWebPage.aspx.
Nell'elenco Linguaggio scegliere il linguaggio di programmazione da utilizzare.
Se si sta creando una pagina in Visual Basic o C#, selezionare la casella di controllo Inserisci il codice in un file separato.
Fare clic su Aggiungi.
Aggiunta di controlli
Dopo aver creato un sito Web e aperto una pagina, il passaggio successivo consiste nell'aggiunta di alcuni controlli alla pagina.
Per aggiungere i controlli e il codice per l'esecuzione del debug
Passare alla visualizzazione Progettazione, quindi dal gruppo Standard della Casella degli strumenti trascinare i controlli riportati di seguito e impostarne le proprietà come indicato nella tabella.
Controllo
Proprietà
TextBox
ID: textName
Text: (vuoto)
Button
ID: buttonDisplayName
Text: Invia
Label
ID: labelName
Text: (vuoto)
Nota: Per questa procedura dettagliata, il layout della pagina non è importante.
Aggiunta del codice
Il passaggio successivo consiste nell'aggiungere di un codice alla pagina. Se l'esecuzione della pagina è corretta, l'utente può immettere un nome, quindi fare clic su Invia, in modo da visualizzare il nome nel controllo Label. Se l'utente chiude il browser, ritornando pertanto alla pagina, questa pagina disporrà già del nome utente in quanto precedentemente memorizzato in un cookie.
Mediante i passaggi riportati di seguito è possibile aggiungere il codice. Sia la procedura per l'aggiunta del codice sia il codice stesso non sono, di proposito, completamente corretti in modo da poter utilizzare l'analisi per rilevare gli errori presenti nella pagina.
Per aggiungere un codice
In Esplora soluzioni, fare clic con il pulsante destro del mouse su FirstWebPage.aspx, quindi fare clic su Visualizza codice.
Nota: Non fare doppio clic sul pulsante della visualizzazione Progettazione.
Immettere il codice riportato di seguito all'interno della definizione di classe.
Nota: Se si sta utilizzando una pagina a file singolo, incollare il codice nel blocco <script>.
Protected Sub buttonDisplayName_Click(ByVal sender As Object, _ ByVal e As EventArgs) labelName.Text = Server.HtmlEncode(textName.Text) Response.Cookies("username").Value = labelName.Text End Sub
protected void buttonDisplayName_Click(Object sender, EventArgs e) { labelName.Text = Server.HtmlEncode(textName.Text); Response.Cookies["username"].Value = labelName.Text; }
Mediante il codice vengono effettuate le seguenti operazioni:
Lettura del valore del controllo TextBox, quindi visualizzazione del valore nel controllo Label. Come parte di questa logica, il codice chiama il metodo HtmlEncode che converte i caratteri HTML eseguibili, ad esempio la parentesi angolare a destra (<), nei rispettivi equivalenti. Si tratta di una misura di protezione per impedire attacchi tramite script. Per informazioni dettagliate, vedere Attacchi tramite script.
Viene creato un cookie denominato username che memorizza il valore immesso dall'utente.
Aggiungere il metodo indicato di seguito sopra o sotto il gestore Click creato nel passaggio precedente.
Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) _ Handles Me.Load If Not Request.Cookies("username") Is Nothing Then labelName.Text = Request.Cookies("username").Value End If End Sub
void Page_Load(Object sender, EventArgs e) { if(Request.Cookies["username"] != null) { labelName.Text = Request.Cookies["username"].Value; } }
Test della pagina
È ora possibile eseguire il test della pagina. Se sono stati seguiti i passaggi deliberatamente incompleti della procedura riportata nella sezione precedente, il funzionamento della pagina non sarà ancora corretto.
Per eseguire il test della pagina
Premere CTRL+F5 per eseguire la pagina.
Una volta visualizzata la pagina, nella casella di testo digitare il nome, quindi fare clic su Invia.
Tenere presente che anche se la selezione di Invia ha consentito alla pagina di essere inviata di nuovo al server, il nome non viene visualizzato.
Chiudere il browser.
A questo punto è possibile utilizzare l'analisi per rilevare gli errori nella pagina.
Utilizzo dell'analisi per rilevare gli errori
In questa sezione verrà attivata la funzione di analisi per la pagina. Si esaminerà l'output di analisi, quindi verranno inclusi i messaggi di analisi personalizzati che consentono di localizzare gli errori della pagina.
Per attivare l'analisi della pagina
Aprire la pagina FirstWebPage.aspx e passare alla visualizzazione Progettazione.
In Proprietà, nell'elenco, fare clic su DOCUMENT.
Vengono visualizzate le proprietà della pagina.
Impostare Trace su true.
L'impostazione di analisi viene effettivamente eseguita come parte della direttiva @ Page. È possibile eseguire una verifica passando alla visualizzazione Origine ed esaminando la prima riga della pagina. La direttiva @ Page risulterà simile a quanto riportato di seguito:
<%@ Page language="VB" Trace="true" %>
<%@ Page language="C#" Trace="true" %>
Premere CTRL+F5 per eseguire la pagina.
La pagina viene visualizzata nel browser. Nella parte superiore sono visibili il testo e i controlli inseriti nelle pagina. Al di sotto del testo e dei controlli è visibile l'output di analisi che consente di visualizzare molti dettagli sull'elaborazione della pagina e di includere le informazioni riportate di seguito:
Sequenza degli eventi di pagina generati durante l'esecuzione della pagina.
Tipi, nomi e dimensioni dei controlli nella pagina.
Cookie e relativi contenuti.
Variabili server, vale a dire un insieme di tutte le informazioni inviate dal browser al server.
Tenere presente che in Dettagli richiesta (il primo blocco di informazioni di analisi), il Tipo richiesta è GET. Questo indica che la pagina è stata eseguita per la prima volta, non si tratta pertanto di un postback.
Nella casella digitare un nome, quindi fare clic su Invia.
Tipo richiesta è ora POST, pertanto si tratta di un postback della pagina. Facendo clic su Invia non implica la visualizzazione del nome.
Chiudere il browser.
È possibile utilizzare l'output di analisi personalizzato per seguire la logica della pagina.
Per aggiungere l'output di analisi personalizzato
Aggiungere le seguenti righe evidenziate al gestore buttonDisplayName_Click creato nella precedente sezione "Aggiunta del codice" della procedura dettagliata:
Protected Sub buttonDisplayName_Click(ByVal sender As Object, _ ByVal e As EventArgs) Trace.Warn("debugging", "Start buttonDisplayName Click handler") labelName.Text = Server.HtmlEncode(textName.Text) Response.Cookies("username").Value = labelName.Text Trace.Warn("debugging", "End buttonDisplayName Click handler") End Sub
protected void buttonDisplayName_Click(Object sender, EventArgs e) { Trace.Warn("debugging", "Start buttonDisplayName Click handler"); labelName.Text = Server.HtmlEncode(textName.Text); Response.Cookies["username"].Value = labelName.Text; Trace.Warn("debugging", "End buttonDisplayName Click handler"); }
Il metodo Warn consente di aggiungere messaggi personalizzati all'output di analisi. Anche se la classe TraceContext fornisce un metodo Write, il metodo Warn si rivela più utile in quanto visualizzato a colori.
Premere CTRL+F5 per eseguire la pagina.
Scegliere Invia.
Quando si esamina l'output di analisi, si noterà che l'output contiene testo di colore rosso. È possibile quindi dedurre che il gestore Click di Invia non viene chiamato.
La causa più comune della mancata chiamata del gestore è l'associazione errata del controllo al gestore eventi; risulta infatti valido in questo specifico caso: anche se è stato aggiunto il codice di gestione degli eventi, non è stato associato l'evento Click di Invia al gestore. In genere, Visual Web Developer consente di associare l'evento al controllo in caso di doppio clic sul controllo nella visualizzazione Progettazione.
Chiudere il browser.
Nella visualizzazione Origine aggiungere all'elemento <asp:button> l'attributo evidenziato indicato di seguito:
<asp:button id="buttonDisplayName" text="Submit" onclick="buttonDisplayName_Click" />
Premere CTRL+F5 per eseguire la pagina.
Nella casella immettere un nome, quindi fare clic su Invia.
Viene visualizzato in rosso l'output di analisi personalizzato nella sezione Informazioni analisi in cui vengono elencate tutte le procedure di elaborazione eseguite dalla pagina.
Nell'output di questa sezione vengono visualizzati i messaggi in base all'ordine in cui vengono generati durante l'elaborazione della pagina. I messaggi sono stati aggiunti al gestore eventi Click elaborato tra le righe Begin Raise PostBackEvent e End Raise PostBackEvent. L'inserimento dei messaggi personalizzati consente di conoscere non solo il gestore chiamato ma anche il punto del ciclo dell'elaborazione della pagina in cui viene eseguito il codice.
La categoria successiva ai messaggi personalizzati è debugging, vale a dire la categoria specificata durante la chiamata del metodo Warn. È possibile specificare qualsiasi tipo di categoria e, se utile, è possibile impostare la proprietà TraceMode della pagina sul valore SortByCategory per agevolare la ricerca della categoria nell'output di analisi.
Tenere inoltre presente che il nome immesso viene visualizzato nell'etichetta.
Dal momento in cui il gestore Click di Invia funziona correttamente, è possibile verificare il resto del codice presente nella pagina, cookie incluso.
Per eseguire il test del controllo
Chiudere il browser.
Premere CTRL+F5 per eseguire la pagina.
Il comportamento previsto è relativo al nome immesso per la visualizzazione automatica nell'etichetta poiché il gestore Click di Invia imposta un cookie letto dal gestore Page_Load durante il successivo postback. L'etichetta tuttavia non viene mai impostata dal cookie.
Se si sta scrivendo un cookie che tuttavia non viene mantenuto, l'errore più frequente è la mancata impostazione di una data di scadenza esplicita per il cookie. Un cookie senza la data di scadenza è un cookie di sessione, che viene mantenuto nella memoria del server solo fino alla chiusura del browser. In pratica il cookie non viene scritto nel browser. Nelle procedure riportate di seguito sarà possibile correggere il problema.
Chiudere il browser.
Nella visualizzazione Origine aggiungere al gestore buttonDisplayName_Click la riga evidenziata indicata di seguito:
Protected Sub buttonDisplayName_Click(ByVal sender As Object, _ ByVal e As EventArgs) Trace.Warn("debugging", "Start buttonDisplayName Click handler") labelName.Text = Server.HtmlEncode(textName.Text) Response.Cookies("username").Value = labelName.Text Response.Cookies("username").Expires= _ DateTime.Now.AddMinutes(30) Trace.Warn("debugging", "End buttonDisplayName Click handler") End Sub
protected void buttonDisplayName_Click(Object sender, EventArgs e) { Trace.Warn("debugging", "Start buttonDisplayName Click handler"); labelName.Text = Server.HtmlEncode(textName.Text); Response.Cookies["username"].Value = labelName.Text; Response.Cookies["username"].Expires= DateTime.Now.AddMinutes(30); Trace.Warn("debugging", "End buttonDisplayName Click handler"); }
La nuova riga imposta in modo esplicito la scadenza del cookie in 30 minuti.
Premere CTRL+F5 per eseguire la pagina.
Nella casella immettere un nome, quindi fare clic su Invia.
Il nome viene visualizzato nel browser. Nell'output di analisi dell'Insieme cookie di risposta è possibile visualizzare il cookie impostato.
Chiudere il browser.
Premere CTRL+F5 per eseguire la pagina.
In questo caso il nome viene inserito automaticamente. Nell'output di analisi dell'Insieme cookie di richiesta è possibile visualizzare il browser che passa il cookie alla pagina.
Visualizzazione delle informazioni di analisi in una finestra relativa a un visualizzatore di analisi
L'impostazione della pagina per visualizzare l'output di analisi è utile quando si utilizza solo una pagina singola. Se, tuttavia, nella propria applicazione si utilizzano numerose pagine, può risultare poco pratico attivare e disattivare l'analisi per ciascuna pagina. Può inoltre costituire una fonte di distrazione visualizzare le informazioni dell'output di analisi nella pagina durante l'esecuzione della pagina stessa. Si sconsiglia in ogni caso di consentire la visualizzazione dell'output di analisi della pagina agli utenti dell'applicazione.
È possibile configurare l'analisi non solo a livello di pagina ma anche a livello di applicazione. L'impostazione dell'analisi a livello di applicazione presenta due vantaggi:
È possibile attivare e disattivare l'analisi per tutte le pagine contemporaneamente.
È possibile visualizzare l'output di analisi in una finestra separata del browser (visualizzatore di analisi) invece di visualizzarlo come parte dell'output della pagina.
Una volta attivato l'analisi a livello di applicazione, ASP.NET consente di mantenere l'output di analisi di tutte le pagine in una cache. È possibile impostare delle opzioni per specificare il numero di pagine relative all'output di analisi da memorizzare e se mantenere le voci più recenti o quelle più obsolete. È possibile richiamare il visualizzatore di analisi nel browser e selezionare l'output di analisi da esaminare.
In questa sezione della procedura dettagliata verrà attivata l'analisi a livello di applicazione e verrà utilizzato il visualizzatore di analisi per esaminare l'output di analisi.
Per attivare l'analisi a livello di applicazione
Passare alla visualizzazione Origine, quindi nella direttiva @ Page nella parte superiore della pagina, eliminare Trace="true".
Nota: Rimuovere l'attributo oltre che impostarlo su false. In caso contrario i passaggi successivi di questa procedura dettagliata non funzioneranno correttamente.
Dal menu Sito Web scegliere Configurazione di ASP.NET.
Viene visualizzato lo strumento Amministrazione sito Web di ASP.NET.
Fare clic su Configurazione applicazioni.
In Debug e analisi fare clic su Configura debug e analisi, quindi selezionare la casella di controllo Acquisisci informazioni di analisi.
Questa impostazione consente di attivare l'analisi a livello di applicazione.
Per questa procedura dettagliata è possibile lasciare le altre impostazioni sui relativi valori predefiniti. Con ASP.NET saranno archiviate nella cache fino a 10 voci di output di analisi (10 postback di una singola pagina o un numero inferiore di postback ciascuno per più pagine) e verranno archiviate le voci più recenti.
Chiudere lo Strumento di amministrazione sito Web di ASP.NET.
A questo punto è possibile eseguire la pagina originale e utilizzarla in modo che l'utente possa visualizzarla. Nello stesso tempo, tuttavia, è possibile visualizzare l'output di analisi quando si dispone di una finestra di browser separata.
Per visualizzare l'output di analisi in una finestra di browser separata
Premere CTRL+F5 per eseguire la pagina.
Tenere presente che nella pagina non viene più visualizzato l'output di analisi. La pagina presenta lo stesso aspetto visualizzato dall'utente.
Nella casella immettere un nome e fare clic su Invia per confermare il corretto funzionamento della pagina.
Aprire una nuova finestra di browser.
Nel browser, nella casella Indirizzo, digitare l'URL sostituendo trace.axd con il nome della pagina che si sta utilizzando.
Se ad esempio l'URL della pagina è il seguente:
https://localhost:8081/WebSite/Default.aspx
Digitare quanto segue:
https://localhost:8081/WebSite/trace.axd
Nota: Per eseguire rapidamente questa operazione è sufficiente copiare l'URL dalla pagina originale, quindi modificare solo il nome della pagina.
Nel browser viene visualizzata la cache corrente delle voci di analisi.
Fare clic su Visualizza dettagli per l'ultima (la più recente) voce di analisi.
Nel browser viene visualizzata l'output di analisi simile a quello visualizzato in precedenza nella procedura dettagliata, con la differenza che non è aggiunto alla fine della pagina.
Passare all'istanza del browser che contiene la pagina originale.
Digitare un nome nella casella, quindi scegliere Invia.
Con questa azione viene generata una nuova voce di log di analisi.
Passare all'istanza del browser che contiene le informazioni.
Nel browser fare clic su Indietro per ritornare alle voci di analisi dell'elenco, quindi fare clic su Aggiorna per aggiornare l'elenco delle voci.
Viene visualizzata una nuova voce per rappresentare l'output di analisi creato al passaggio 7.
Chiudere entrambe le finestre di browser.
Creazione di un output di analisi personalizzato
Come specificato, l'output di analisi contiene molte informazioni, talvolta più del necessario. Potrebbe essere necessario, ad esempio, limitare l'output di analisi solo a quello personalizzato. L'analisi consente di leggere i contenuti del buffer di analisi e di visualizzare in modo selettivo le informazioni necessarie.
Per creare l'output di analisi personalizzato, gestire l'evento TraceFinished relativo all'oggetto Trace. Nel gestore eventi è possibile leggere il buffer di analisi.
Per creare l'output di analisi personalizzato
Nella pagina che si sta utilizzando aggiungere il codice evidenziato indicato di seguito al gestore Page_Load:
Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) _ Handles Me.Load If Not Request.Cookies("username") Is Nothing Then labelName.Text = Request.Cookies("username").Value End If AddHandler Trace.TraceFinished, AddressOf Me.TraceFinished If IsPostBack Then Trace.Write("debugging", "Page_Load (Postback)") Else Trace.Write("debugging", "Page_Load (First Time)") End If End Sub
void Page_Load(object sender, EventArgs e) { if(Request.Cookies["username"].Value != null) { labelName.Text = Request.Cookies["username"].Value; } Trace.TraceFinished += new TraceContextEventHandler(this.TraceFinished); if (Page.IsPostBack) { Trace.Write("debugging", "Page load (postback)"); } else { Trace.Write("debugging", "Page load (first time)"); } }
Con il codice vengono eseguite le due funzioni riportate di seguito:
Associazione di un metodo della pagina all'evento TraceFinished per l'oggetto Trace generato quando l'output di analisi è completo per la pagina. Nel prossimo passaggio verrà aggiunto il metodo.
Scrittura di alcune informazioni sull'analisi.
Creare il metodo riportato di seguito per gestire l'evento TraceFinished:
Sub TraceFinished(ByVal sender As Object, _ ByVal e As TraceContextEventArgs) Dim traceRecord As TraceContextRecord For Each traceRecord In e.TraceRecords If traceRecord.Category = "debugging" Then Response.Write("<BR>" & traceRecord.Message) End If Next End Sub
void TraceFinished(object sender, TraceContextEventArgs e) { foreach(TraceContextRecord traceRecord in e.TraceRecords) { if(traceRecord.Category == "debugging") { Response.Write("<br>" + traceRecord.Message); } } }
Questo codice viene eseguito al termine dell'output di analisi. Il buffer di analisi è disponibile come un insieme nella proprietà TraceRecords dell'argomento di eventi e. Il codice consente di scorrere l'insieme e visualizzare il valore di tutti i record di analisi che come categoria dispongono di debugging; in questa procedura dettagliata la categoria di tutti gli output di analisi personalizzati è stata impostata su debugging.
A questo punto della procedura dettagliata il sito Web viene configurato per attivare la funzione di analisi per tutte le pagine, tuttavia l'output di analisi viene diretto a un visualizzatore di analisi invece che alla pagina. Se il sito Web viene configurato in modo diverso (ad esempio se l'output di analisi viene visualizzato nella pagina), seguire la procedura relativa all'attivazione dell'analisi a livello di applicazione in "Visualizzazione delle informazioni di analisi in una finestra relativa a un visualizzatore di analisi" precedentemente nella procedura dettagliata.
È ora possibile verificare l'output di analisi personalizzato.
Per verificare l'output di analisi personalizzato
Premere CTRL+F5 per eseguire la pagina.
Quando si visualizza la pagina nel browser, viene visualizzato anche il messaggio Page load (first time) senza nessun altro output di analisi.
Scegliere Invia.
Vengono visualizzati i messaggi Page load (postback), Start buttonDisplayName Click handler e End buttonDisplayName Click handler.
Nota: |
---|
Se si supera il numero di richieste memorizzate nella cache che è stato specificato nell'attributo requestLimit del Elemento trace (schema delle impostazioni ASP.NET), non verrà generato l'evento TraceFinished e i messaggi non saranno visualizzati nella pagina Web. |
Passaggi successivi
In questa procedura dettagliata è stata illustrata la funzionalità di base dell'analisi in ASP.NET. Oltre a utilizzare l'analisi per la visualizzazione delle informazioni all'interno dell'applicazione Web, è possibile integrare l'analisi di ASP.NET con un'altra strumentazione. Ad esempio, è possibile eseguire le operazioni riportate di seguito.
Visualizzare i messaggi di diagnostica del sistema come parte dell'analisi di ASP.NET.
Per ulteriori informazioni, vedere Procedura dettagliata: integrazione dell'analisi ASP.NET all'analisi System.Diagnostics.
Inviare le informazioni sull'analisi di ASP.NET al meccanismo di analisi di .NET Framework che utilizza le classi nello spazio dei nomi System.Diagnostics.
Inoltrare informazioni ai listener della strumentazione registrati come parte del monitoraggio dello stato del sito Web.
Per ulteriori informazioni sui listener registrati, vedere Elemento <listeners> per <trace>.