다음을 통해 공유


<source>에 대한 <listeners>의 <add> 요소

추적 소스의 Listeners 컬렉션에 수신기를 추가합니다.

<configuration>
  <system.diagnostics>
    <sources>
      <source>
        <listeners>
          <add>

구문

<add name="name"
  type="TraceListenerClassName, Version, Culture, PublicKeyToken"  
  initializeData="data"/>  

특성 및 요소

다음의 섹션은 특성, 자식 요소 및 부모 요소에 대해 설명합니다.

특성

특성 설명
type sharedListeners 컬렉션에서 수신기를 참조하지 않는 한 필수 특성입니다. 이 경우 이름으로만 참조하면 됩니다(예제 참조).

수신기 형식을 지정합니다. 정규화된 형식 이름 지정에 지정된 요구 사항을 충족하는 문자열을 사용해야 합니다.
initializeData 선택적 특성입니다.

지정된 클래스의 생성자에 전달된 문자열입니다. 클래스에 문자열을 사용하는 생성자가 없는 경우 ConfigurationException이 throw됩니다.
name 선택적 특성입니다.

수신기의 이름을 지정합니다.
traceOutputOptions 선택적 특성입니다.

추적 수신기의 TraceOutputOptions 속성 값을 지정합니다.
[사용자 지정 특성] 선택적 특성입니다.

해당 수신기에 대한 GetSupportedAttributes 메서드로 식별되는 수신기별 특성의 값을 지정합니다. DelimiterDelimitedListTraceListener 클래스에 고유한 추가 특성의 예제입니다.

자식 요소

요소 설명
<filter> 추적 소스의 Listeners 컬렉션에 있는 수신기에 필터를 추가합니다.

부모 요소

요소 설명
configuration 공용 언어 런타임 및 .NET Framework 애플리케이션에서 사용하는 모든 구성 파일의 루트 요소입니다.
system.diagnostics 메시지를 수집하고 저장하고 라우팅하는 추적 수신기를 지정하며, 추적 스위치가 설정되는 수준을 지정합니다.
sources 추적 메시지를 시작하는 추적 소스가 포함되어 있습니다.
source 추적 메시지를 시작하는 추적 소스를 지정합니다.
listeners 메시지를 수집, 저장, 라우팅하는 수신기를 지정합니다.

설명

.NET Framework와 함께 제공되는 수신기 클래스는 TraceListener 클래스에서 파생됩니다.

추적 수신기의 name 특성을 지정하지 않으면 추적 수신기의 Name 속성은 기본적으로 빈 문자열(“”)로 설정됩니다. 애플리케이션에 수신기가 하나만 있는 경우 이름을 지정하지 않고 추가할 수 있으며 이름에 빈 문자열을 지정하여 제거할 수 있습니다. 그러나 애플리케이션에 둘 이상의 수신기가 있는 경우 TraceSource.Listeners 컬렉션의 개별 추적 수신기를 식별하고 관리할 수 있도록 각 추적 수신기에 고유한 이름을 지정해야 합니다.

참고 항목

동일한 형식의 추적 수신기를 두 개 이상 동일한 이름으로 추가하면 해당 형식과 이름의 추적 수신기가 하나만 Listeners 컬렉션에 추가됩니다. 그러나 프로그래밍 방식으로 여러 동일한 수신기를 Listeners 컬렉션에 추가할 수 있습니다.

initializeData 특성의 값은 사용자가 만든 수신기 형식에 따라 달라집니다. 모든 추적 수신기에서 initializeData를 지정해야 하는 것은 아닙니다.

참고 항목

initializeData 특성을 사용하면 “‘initializeData’ 특성이 선언되지 않았습니다.”라는 컴파일러 경고가 표시될 수 있습니다.” 이 경고는 구성 설정이 initializeData 특성을 인식하지 못하는 추상 기본 클래스 TraceListener에 대해 유효성을 검사하기 때문에 발생합니다. 일반적으로 매개 변수를 사용하는 생성자가 있는 추적 수신기 구현의 경우 이 경고를 무시할 수 있습니다.

다음 표에서는 .NET Framework와 함께 포함된 추적 수신기를 보여 주고 initializeData 특성의 값을 설명합니다.

추적 수신기 클래스 initializeData 특성 값
System.Diagnostics.ConsoleTraceListener ConsoleTraceListener 생성자에 대한 useErrorStream 값입니다. initializeData 특성을 “true”로 설정하여 추적을 작성하고 표준 오류 스트림에 대한 출력을 디버그합니다. “false”로 설정하여 표준 출력 스트림에 기록합니다.
System.Diagnostics.DelimitedListTraceListener 쓸 파일 DelimitedListTraceListener 의 이름입니다.
System.Diagnostics.EventLogTraceListener 기존 이벤트 로그 원본의 이름입니다.
System.Diagnostics.EventSchemaTraceListener EventSchemaTraceListener가 기록하는 파일 이름입니다.
System.Diagnostics.TextWriterTraceListener TextWriterTraceListener가 기록하는 파일 이름입니다.
System.Diagnostics.XmlWriterTraceListener XmlWriterTraceListener가 기록하는 파일 이름입니다.

구성 파일

이 요소는 컴퓨터 구성 파일(Machine.config) 및 애플리케이션 구성 파일에서 사용할 수 있습니다.

예시

다음 예제에서는 <add> 요소를 사용하여 수신기 consoletextListener를 추적 소스 TraceSourceApp에 대한 Listeners 컬렉션에 추가하는 방법을 보여 줍니다. textListener 수신기는 myListener.log 파일에 추적 출력을 기록합니다.

<configuration>  
  <system.diagnostics>  
    <sources>  
      <source name="TraceSourceApp" switchName="sourceSwitch"
        switchType="System.Diagnostics.SourceSwitch">  
        <listeners>  
          <add name="console"
            type="System.Diagnostics.ConsoleTraceListener"/>  
          <add name="textListener"/>  
          <remove name="Default"/>  
        </listeners>  
      </source>  
    </sources>  
    <sharedListeners>  
      <add name="textListener"
        type="System.Diagnostics.TextWriterTraceListener"
        initializeData="myListener.log"/>  
    </sharedListeners>  
    <switches>  
      <add name="sourceSwitch" value="Warning"/>  
    </switches>  
  </system.diagnostics>  
</configuration>

참고 항목