<trace> 元素

包含对跟踪消息进行收集、存储和路由的侦听器。

<trace autoflush="true|false" 
       indentsize="indent value"
       useGlobalLock="true| false"/>

特性和元素

以下几节描述了属性、子元素和父元素。

特性

特性

说明

autoflush

可选特性。

指定跟踪侦听器是否在每次写入操作后自动刷新输出缓冲区。

indentsize

可选特性。

指定要缩进的空格数。

useGlobalLock

可选特性。

指示是否应使用全局锁。

autoflush 特性

说明

false

不自动刷新输出缓冲区。 这是默认值。

true

自动刷新输出缓冲区。

useGlobalLock 特性

说明

false

如果侦听器是线程安全的,则不使用全局锁;否则使用全局锁。

true

始终使用全局锁,无论侦听器是否为线程安全的。 这是默认值。

子元素

元素

说明

<listeners>

指定对消息进行收集、存储和路由的侦听器。

父元素

元素

说明

configuration

公共语言运行时和 .NET Framework 应用程序所使用的每个配置文件中的根元素。

system.diagnostics

指定对消息进行收集、存储和路由的跟踪侦听器以及设置跟踪开关的级别。

示例

下面的示例演示如何使用 <trace> 元素将侦听器 MyListener 添加到 Listeners 集合。 MyListener 创建一个名为 MyListener.log 的文件,并将输出写入到该文件。 useGlobalLock 特性设置为 false,这导致在跟踪侦听器是线程安全的情况下不使用全局锁。 autoflush 特性设置为 true,这导致无论是否调用 Trace.Flush 方法,跟踪侦听器都将写入该文件。 indentsize 特性设置为 0(零),这导致在调用 Trace.Indent 方法时,侦听器不缩进(缩进的空格数为零)。

<configuration>
   <system.diagnostics>
      <trace useGlobalLock="false" autoflush="true" indentsize="0">
         <listeners>
            <add name="myListener" type="System.Diagnostics.TextWriterTraceListener, system version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" initializeData="c:\myListener.log" />
         </listeners>
      </trace>
   </system.diagnostics>
</configuration>

请参见

参考

跟踪和调试设置架构

TraceListener

DefaultTraceListener

TextWriterTraceListener

EventLogTraceListener