다음을 통해 공유


방법: 네트워크 추적 구성

애플리케이션 또는 컴퓨터 구성 파일에는 네트워크 추적의 형식 및 콘텐츠를 결정하는 설정이 포함됩니다. 이 절차를 수행하기 전에 추적을 사용하도록 설정해야 합니다. 자세한 내용은 네트워크 추적 사용을 참조하세요.

machine.config컴퓨터 구성 파일은 %windir%\Microsoft.NET\Framework 폴더에 저장됩니다. 컴퓨터에 설치된 각 버전의 .NET Framework에 대한 %windir%\Microsoft.NET\Framework의 폴더 에는 별도의machine.config 파일이 있습니다. 예를 들면 다음과 같습니다.

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

이러한 설정은 컴퓨터 구성 파일보다 우선하는 애플리케이션의 구성 파일에서도 만들 수 있습니다.

네트워크 추적 구성

네트워크 추적을 구성하려면 적절한 구성 파일에 다음 줄을 추가합니다. 이러한 설정에 대한 값과 옵션은 아래 표에 설명되어 있습니다.

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

메서드에서 출력 추적

블록에 이름을 <switches> 추가하면 추적 출력에 이름과 관련된 일부 메서드의 정보가 포함됩니다. 다음 표에서는 출력에 대해 설명합니다.

이름 출력:
System.Net.Sockets Socket, TcpListener, TcpClient, Dns 클래스의 일부 public 메서드입니다.
System.Net 일부 HttpWebRequest, HttpWebResponse, FtpWebRequest, 및 FtpWebResponse 클래스의 공용 메서드와 SSL 디버그 정보(잘못된 인증서, 누락된 발급자 목록 및 클라이언트 인증서 오류).
System.Net.HttpListener HttpListener, HttpListenerRequest, 및 HttpListenerResponse 클래스의 일부 public 메서드입니다.
System.Net.Cache System.Net.Cache의 일부 프라이빗 및 내부 메서드.
System.Net.Http HttpClient, DelegatingHandler, HttpClientHandler, HttpMessageHandler, MessageProcessingHandler, 및 WebRequestHandler 클래스의 일부 공개 메서드입니다.
System.Net.WebSockets.WebSocket ClientWebSocketWebSocket 클래스의 일부 공용 메서드.

추적 출력 속성

다음 표에 나열된 특성은 추적 출력을 구성합니다.

속성 이름 특성 값
value 필수 String 속성입니다. 출력의 상세 수준을 설정합니다. 적법한 값은 Critical, Error, VerboseWarningInformation.

이 특성은 switches 요소의 add 요소에 설정해야 합니다. source 요소에 이 특성이 설정된 경우 예외가 발생합니다.

예: <add name="System.Net" value="Verbose"/>
maxdatasize 선택적 Int32 특성입니다. 각 줄 추적에 포함된 네트워크 데이터의 최대 바이트 수를 설정합니다. 기본값은 1024입니다.

이 특성은 요소에서 source 설정해야 합니다. 이 속성이 switches 요소 아래의 요소에 설정된 경우 예외가 발생합니다.

예: <source name="System.Net" tracemode="includehex" maxdatasize="1024">
tracemode 선택적 String 특성입니다. 프로토콜 추적을 16진수 및 텍스트 형식으로 표시하도록 includehex 설정합니다. 텍스트만 표시하도록 protocolonly 설정합니다. 기본값은 includehex입니다.

이 특성은 요소에서 source 설정해야 합니다. 이 특성이 switches 요소 하위의 요소에 설정된 경우 예외가 발생합니다.

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

참고하십시오