TraceListener Class
 

Provides the abstract base class for the listeners who monitor trace and debug output.

Namespace:   System.Diagnostics
Assembly:  System (in System.dll)


Syntax
[HostProtectionAttribute(SecurityAction.LinkDemand, Synchronization = true)]
public abstract class TraceListener : MarshalByRefObject, IDisposable
[HostProtectionAttribute(SecurityAction::LinkDemand, Synchronization = true)]
public ref class TraceListener abstract : MarshalByRefObject, 
	IDisposable
[<AbstractClass>]
[<HostProtectionAttribute(SecurityAction.LinkDemand, Synchronization = true)>]
type TraceListener = 
    class
        inherit MarshalByRefObject
        interface IDisposable
    end
<HostProtectionAttribute(SecurityAction.LinkDemand, Synchronization := True)>
Public MustInherit Class TraceListener
	Inherits MarshalByRefObject
	Implements IDisposable
Constructors
NameDescription
System_CAPS_protmethod TraceListener

Initializes a new instance of the TraceListener class.

System_CAPS_protmethod TraceListener

Initializes a new instance of the TraceListener class using the specified name as the listener.

Properties
NameDescription
System_CAPS_pubproperty

Gets the custom trace listener attributes defined in the application configuration file.

System_CAPS_pubproperty

Gets and sets the trace filter for the trace listener.

System_CAPS_pubproperty

Gets or sets the indent level.

System_CAPS_pubproperty

Gets or sets the number of spaces in an indent.

System_CAPS_pubproperty

Gets a value indicating whether the trace listener is thread safe.

System_CAPS_pubproperty

Gets or sets a name for this TraceListener.

System_CAPS_protproperty

Gets or sets a value indicating whether to indent the output.

System_CAPS_pubproperty

Gets or sets the trace output options.

Methods
NameDescription
System_CAPS_pubmethod Close

When overridden in a derived class, closes the output stream so it no longer receives tracing or debugging output.

System_CAPS_pubmethod CreateObjRef

Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.(Inherited from MarshalByRefObject.)

System_CAPS_pubmethod Dispose

Releases all resources used by the TraceListener.

System_CAPS_protmethod Dispose

Releases the unmanaged resources used by the TraceListener and optionally releases the managed resources.

System_CAPS_pubmethod Equals

Determines whether the specified object is equal to the current object.(Inherited from Object.)

System_CAPS_pubmethod Fail

Emits an error message to the listener you create when you implement the TraceListener class.

System_CAPS_pubmethod Fail

Emits an error message and a detailed error message to the listener you create when you implement the TraceListener class.

System_CAPS_protmethod Finalize

Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.(Inherited from Object.)

System_CAPS_pubmethod Flush

When overridden in a derived class, flushes the output buffer.

System_CAPS_pubmethod GetHashCode

Serves as the default hash function. (Inherited from Object.)

System_CAPS_pubmethod GetLifetimeService

Retrieves the current lifetime service object that controls the lifetime policy for this instance.(Inherited from MarshalByRefObject.)

System_CAPS_protmethod GetSupportedAttributes

Gets the custom attributes supported by the trace listener.

System_CAPS_pubmethod GetType

Gets the Type of the current instance.(Inherited from Object.)

System_CAPS_pubmethod InitializeLifetimeService

Obtains a lifetime service object to control the lifetime policy for this instance.(Inherited from MarshalByRefObject.)

System_CAPS_protmethod MemberwiseClone

Creates a shallow copy of the current Object.(Inherited from Object.)

System_CAPS_protmethod MemberwiseClone

Creates a shallow copy of the current MarshalByRefObject object.(Inherited from MarshalByRefObject.)

System_CAPS_pubmethod ToString

Returns a string that represents the current object.(Inherited from Object.)

System_CAPS_pubmethod TraceData

Writes trace information, a data object and event information to the listener specific output.

System_CAPS_pubmethod TraceData

Writes trace information, an array of data objects and event information to the listener specific output.

System_CAPS_pubmethod TraceEvent

Writes trace and event information to the listener specific output.

System_CAPS_pubmethod TraceEvent

Writes trace information, a message, and event information to the listener specific output.

System_CAPS_pubmethod TraceEvent

Writes trace information, a formatted array of objects and event information to the listener specific output.

System_CAPS_pubmethod TraceTransfer

Writes trace information, a message, a related activity identity and event information to the listener specific output.

System_CAPS_pubmethod Write

Writes the value of the object's ToString method to the listener you create when you implement the TraceListener class.

System_CAPS_pubmethod Write

Writes a category name and the value of the object's ToString method to the listener you create when you implement the TraceListener class.

System_CAPS_pubmethod Write

When overridden in a derived class, writes the specified message to the listener you create in the derived class.

System_CAPS_pubmethod Write

Writes a category name and a message to the listener you create when you implement the TraceListener class.

System_CAPS_protmethod WriteIndent

Writes the indent to the listener you create when you implement this class, and resets the property to false.

System_CAPS_pubmethod WriteLine

Writes the value of the object's ToString method to the listener you create when you implement the TraceListener class, followed by a line terminator.

System_CAPS_pubmethod WriteLine

Writes a category name and the value of the object's ToString method to the listener you create when you implement the TraceListener class, followed by a line terminator.

System_CAPS_pubmethod WriteLine

When overridden in a derived class, writes a message to the listener you create in the derived class, followed by a line terminator.

System_CAPS_pubmethod WriteLine

Writes a category name and a message to the listener you create when you implement the TraceListener class, followed by a line terminator.

Remarks

For examples of how to implement a TraceListener, see the DefaultTraceListener, TextWriterTraceListener and the EventLogTraceListener classes.

You must enable tracing or debugging to use a trace listener. The following syntax is compiler specific. If you use compilers other than C# or Visual Basic, refer to the documentation for your compiler.

  • To enable debugging in C#, add the /d:DEBUG flag to the compiler command line when you compile your code, or you can add #define DEBUG to the top of your file. In Visual Basic, add the /d:DEBUG=True flag to the compiler command line.

  • To enable tracing in C#, add the /d:TRACE flag to the compiler command line when you compile your code, or add #define TRACE to the top of your file. In Visual Basic, add the /d:TRACE=True flag to the compiler command line.

To add a trace listener, edit the configuration file that corresponds to the name of your application. Within this file, you can add a listener, set its type and set its parameter, remove a listener, or clear all the listeners previously set by the application. The configuration file should be formatted similar to the following example.

<configuration>
  <system.diagnostics>
    <trace autoflush="false" indentsize="4">
      <listeners>
        <add name="myListener" type="System.Diagnostics.TextWriterTraceListener" initializeData="TextWriterOutput.log" />
        <remove name="Default" />
      </listeners>
    </trace>
  </system.diagnostics>
</configuration>

For more information on using configuration files for tracing, see <system.diagnostics> Element.

Notes to Inheritors:

Inherit from this class to implement a custom listener for the Debug and Trace classes. At a minimum, you must implement the Write and WriteLine methods. Additionally, you can implement the Fail, Close and Flush methods.

Version Information
Universal Windows Platform
Available since 10
.NET Framework
Available since 1.1
Thread Safety

This type is thread safe.

Return to top