Procédure : Configurer le traçage réseau

Le fichier de configuration de l'application ou de l'ordinateur contient les paramètres qui déterminent le format et le contenu des traces réseau. Avant d'effectuer cette procédure, assurez-vous que le traçage est activé. Pour plus d’informations, consultez Activer le traçage réseau.

Le fichier de configuration de l’ordinateur, machine.config, est stocké dans le dossier %windir%\Microsoft.NET\Framework. Un fichier machine.config distinct est disponible pour chaque version de .NET Framework installée sur l’ordinateur dans les dossiers situés sous %windir%\Microsoft.NET\Framework, par exemple :

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

Ces paramètres peuvent également être effectués dans le fichier de configuration de l'application, qui est prioritaire sur le fichier de configuration de votre ordinateur.

Configurer le traçage réseau

Pour configurer le traçage réseau, ajoutez les lignes suivantes au fichier de configuration approprié. Les valeurs et les options de ces paramètres sont décrites dans les tableaux ci-dessous.

<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>

Sortie de trace des méthodes

Lorsque vous ajoutez un nom au bloc <switches>, la sortie de trace inclut les informations de certaines méthodes associées au nom. Le tableau suivant décrit la sortie :

Nom Sortie de
System.Net.Sockets Certaines méthodes publiques des classes Socket, TcpListener, TcpClient et Dns.
System.Net Certaines méthodes publiques des classes HttpWebRequest, HttpWebResponse, FtpWebRequest et FtpWebResponse, et informations de débogage SSL (certificats non valides, liste des émetteurs manquants et erreurs de certificat client).
System.Net.HttpListener Certaines méthodes publiques des classes HttpListener, HttpListenerRequest et HttpListenerResponse.
System.Net.Cache Certaines méthodes privées et internes dans System.Net.Cache.
System.Net.Http Certaines méthodes publiques des classes HttpClient, DelegatingHandler, HttpClientHandler, HttpMessageHandler, MessageProcessingHandler etWebRequestHandler.
System.Net.WebSockets.WebSocket Certaines méthodes publiques des classes ClientWebSocket et WebSocket.

Attributs de sortie de trace

Les attributs répertoriés dans le tableau suivant configurent la sortie de trace :

Nom de l’attribut Valeur d'attribut
value Attribut String requis. Définit les commentaires de la sortie. Les valeurs légitimes sont Critical, Error, Verbose, Warning et Information.

Cet attribut doit être défini sur l’élément add de l’élément switches. Une exception est levée si cet attribut est défini sur l’élément source.

Exemple : <add name="System.Net" value="Verbose"/>
maxdatasize Attribut Int32 facultatif. Définit le nombre maximal d'octets de données réseau incluses dans chaque trace de ligne. La valeur par défaut est 1024.

Cet attribut doit être défini sur l’élément source. Une exception est levée si cet attribut est défini sur un élément situé sous l’élément switches.

Exemple : <source name="System.Net" tracemode="includehex" maxdatasize="1024">
tracemode Attribut String facultatif. Définissez la valeur includehex pour afficher les traces de protocole au format hexadécimal et texte. Définissez la valeur protocolonly pour afficher uniquement du texte. La valeur par défaut est includehex.

Cet attribut doit être défini sur l’élément source. Une exception est levée si cet attribut est défini sur un élément situé sous l’élément switches.

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

Voir aussi