TraceSource.TraceEvent Method (TraceEventType, Int32, String, Object[])

Writes a trace event to the trace listeners in the Listeners collection using the specified event type, event identifier, and argument array and format.

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

public void TraceEvent (
	TraceEventType eventType,
	int id,
	string format,
	params Object[] args
/** @attribute ConditionalAttribute("TRACE") */ 
public void TraceEvent (
	TraceEventType eventType, 
	int id, 
	String format, 
	Object[] args
public function TraceEvent (
	eventType : TraceEventType, 
	id : int, 
	format : String, 
	... args : Object[]
Not applicable.



One of the TraceEventType values that specifies the event type of the trace data.


A numeric identifier for the event.


A composite format string that contains text intermixed with zero or more format items, which correspond to objects in the args array.


An object array containing zero or more objects to format.

Exception typeCondition


format is a null reference (Nothing in Visual Basic).


format is invalid.


The number that indicates an argument to format is less than zero, or greater than or equal to the number of specified objects to format.


An attempt was made to trace an event during finalization.

The TraceEvent method is intended to trace events that can be processed automatically by tools. For example, a monitoring tool can notify an administrator if a specific event is traced by a specific source.

The TraceEvent method calls the ShouldTrace method of the SourceSwitch object returned by the Switch property. If ShouldTrace returns true, TraceEvent calls the corresponding TraceEvent method of each listener. Otherwise, TraceEvent returns without calling the listeners' methods.

The trace content is listener specific. The default TraceEvent(TraceEventCache,String,TraceEventType,Int32,String,Object[]) method writes the source name, event type, and numeric identity in the trace header, then calls the String.Format method, passing the format string and args array and using the CultureInfo.InvariantCulture property to format the string as the message output.


The EventLogTraceListener object is limited to a maximum id value of 65,535. If the id value specified is greater than 65,535, the EventLogTraceListener object uses 65,535.

The following code example shows the use of the TraceEvent(TraceEventType,Int32) method to pass a trace event to the listeners. This code example is part of a larger example provided for the TraceSource class.

// Issue file not found message as a verbose event using a formatted string.
ts.TraceEvent(TraceEventType.Verbose, 3, "File {0} not found.", "test");

Windows 98, Windows Server 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

.NET Framework

Supported in: 3.0, 2.0