Procedura: Configurare la traccia di rete

Nel file di configurazione del computer o dell'applicazione sono contenute le impostazioni che determinano il formato e il contenuto delle tracce di rete. Prima di eseguire questa procedura, assicurarsi che la funzionalità di traccia sia abilitata. Per altre informazioni, vedere Abilitare la traccia di rete.

Il file di configurazione del computer, machine.config, è memorizzato nella cartella %windir%\Microsoft.NET\Framework. Esiste un file machine.config separato nelle cartelle in %windir%\Microsoft.NET\Framework per ogni versione di .NET Framework installata nel computer, ad esempio:

  • C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Config\machine.config
  • C:\WINDOWS\Microsoft.NET\Framework64\v4.0.30319\Config\machine.config

Queste impostazioni possono essere effettuate anche nel file di configurazione dell'applicazione, che ha la precedenza sul file di configurazione del computer.

Configurare la traccia di rete

Per configurare la traccia di rete, aggiungere le seguenti righe al file di configurazione appropriato. I valori e le opzioni per queste impostazioni sono descritti nelle tabelle riportate di seguito.

<configuration>
  <system.diagnostics>
    <sources>
      <source name="System.Net" tracemode="includehex" maxdatasize="1024">
        <listeners>
          <add name="System.Net"/>
        </listeners>
      </source>
      <source name="System.Net.Cache">
        <listeners>
          <add name="System.Net"/>
        </listeners>
      </source>
      <source name="System.Net.Http">
        <listeners>
          <add name="System.Net"/>
        </listeners>
      </source>
      <source name="System.Net.Sockets">
        <listeners>
          <add name="System.Net"/>
        </listeners>
      </source>
      <source name="System.Net.WebSockets">
        <listeners>
          <add name="System.Net"/>
        </listeners>
      </source>
   </sources>
    <switches>
      <add name="System.Net" value="Verbose"/>
      <add name="System.Net.Cache" value="Verbose"/>
      <add name="System.Net.Http" value="Verbose"/>
      <add name="System.Net.Sockets" value="Verbose"/>
      <add name="System.Net.WebSockets" value="Verbose"/>
    </switches>
    <sharedListeners>
      <add name="System.Net"
        type="System.Diagnostics.TextWriterTraceListener"
        initializeData="network.log"
        traceOutputOptions="ProcessId, DateTime"
      />
    </sharedListeners>
    <trace autoflush="true"/>
  </system.diagnostics>
</configuration>

Output di traccia dai metodi

Quando si aggiunge un nome al blocco <switches>, l'output di traccia include informazioni da alcuni metodi correlati al nome. Nella tabella riportata di seguito viene descritto l'output:

Nome Output da
System.Net.Sockets Alcuni metodi pubblici delle classi Socket, TcpListener, TcpClient e Dns.
System.Net Alcuni metodi pubblici delle classi HttpWebRequest, HttpWebResponse, FtpWebRequest e FtpWebResponse e informazioni sul debug SSL (certificati non validi, elenco di autorità emittenti mancante ed errori di certificato del client).
System.Net.HttpListener Alcuni metodi pubblici delle classi HttpListener, HttpListenerRequest e HttpListenerResponse.
System.Net.Cache Alcuni metodi interni e privati in System.Net.Cache.
System.Net.Http Alcuni metodi pubblici delle classi HttpClient, DelegatingHandler, HttpClientHandler, HttpMessageHandler, MessageProcessingHandler e WebRequestHandler.
System.Net.WebSockets.WebSocket Alcuni metodi pubblici delle classi ClientWebSocket e WebSocket.

Attributi di output di traccia

Gli attributi elencati nella tabella seguente sono utilizzati per configurare l'output di traccia:

Attribute name Valore dell'attributo
value Attributo String obbligatorio. Imposta il livello di dettaglio dell'output. I valori consentiti sono Critical, Error, Verbose, Warning e Information.

Questo attributo deve essere impostato sull’elemento add dell’elemento switches. Viene generata un'eccezione se l'attributo viene impostato per l'elemento source.

Esempio: <add name="System.Net" value="Verbose"/>
maxdatasize Attributo Int32 facoltativo. Imposta il numero massimo di byte di dati di rete inclusi in ogni traccia di riga. Il valore predefinito è 1024.

Questo attributo deve essere impostato per l'elemento source. Viene generata un'eccezione se questo attributo viene impostato per un elemento sotto l'elemento switches.

Esempio: <source name="System.Net" tracemode="includehex" maxdatasize="1024">
tracemode Attributo String facoltativo. Impostare su includehex per visualizzare le tracce del protocollo nel formato esadecimale e di testo. Impostare su protocolonly per mostrare solo testo. Il valore predefinito è includehex.

Questo attributo deve essere impostato per l'elemento source. Viene generata un'eccezione se questo attributo viene impostato per un elemento sotto l'elemento switches.

Esempio: <source name="System.Net" tracemode="includehex" maxdatasize="1024">

Vedi anche