EventLogTraceListener 类

定义

提供一个简单的侦听器,该侦听器将跟踪或调试输出指引至 EventLog

public ref class EventLogTraceListener sealed : System::Diagnostics::TraceListener
public sealed class EventLogTraceListener : System.Diagnostics.TraceListener
type EventLogTraceListener = class
    inherit TraceListener
Public NotInheritable Class EventLogTraceListener
Inherits TraceListener
继承
EventLogTraceListener

示例

以下示例创建一个将输出发送到事件日志的跟踪侦听器。 首先,代码会创建一个使用源myEventLogSource的新EventLogTraceListener代码。 接下来, myTraceListener 将添加到 Trace.Listeners 集合中。 最后,该示例向对象发送一行输出 Listeners

int main()
{
   #if defined(TRACE)
   
   // Create a trace listener for the event log.
   EventLogTraceListener^ myTraceListener = 
      gcnew EventLogTraceListener( "myEventLogSource" );
   
   // Add the event log trace listener to the collection.
   Trace::Listeners->Add( myTraceListener );
   
   // Write output to the event log.
   Trace::WriteLine( "Test output" );
   
   #endif
}
// Create a trace listener for the event log.
EventLogTraceListener myTraceListener = new EventLogTraceListener("myEventLogSource");

// Add the event log trace listener to the collection.
Trace.Listeners.Add(myTraceListener);

// Write output to the event log.
Trace.WriteLine("Test output");
Overloads Public Shared Sub Main(args() As String)
   
    ' Create a trace listener for the event log.
    Dim myTraceListener As New EventLogTraceListener("myEventLogSource")
    
    ' Add the event log trace listener to the collection.
    Trace.Listeners.Add(myTraceListener)
    
    ' Write output to the event log.
    Trace.WriteLine("Test output")
End Sub

注解

可以将此EventLogTraceListener实例添加到Debug.ListenersTrace.ListenersTraceSource.Listeners集合中,以便将跟踪或调试的输出发送到某个EventLog集合。 可以在代码中添加实例,或者,对于.NET Framework应用,请在应用程序配置文件中指定该实例。

若要添加EventLogTraceListener使用.NET Framework应用程序配置文件,请编辑对应于应用程序名称的文件。 在此文件中,插入类型的 System.Diagnostics.EventLogTraceListener 元素。 以下示例添加一myListenerTrace.Listeners个名为EventLogTraceListener集合的对象。 该 initializeData 参数指定要传递给 EventLogTraceListener(String) 构造函数的事件日志源的名称。

<configuration>  
  <system.diagnostics>  
    <trace autoflush="false" indentsize="4">  
      <listeners>  
        <add name="myListener"  
          type="System.Diagnostics.EventLogTraceListener"  
          initializeData="TraceListenerLog" />  
      </listeners>  
    </trace>  
  </system.diagnostics>  
</configuration>  

备注

Source如果与EventLogTraceListener实例关联的事件日志不存在,则会创建新的事件源。 若要在 Windows Vista、Windows XP Professional 或 Windows Server 2003 中创建事件源,您必须拥有管理特权。

此要求的原因是必须搜索所有事件日志(包括安全性)以确定事件源是否是唯一的。 在 Windows Vista 中,用户无权访问安全日志;因此将引发 SecurityException

在 Windows Vista 中,用户帐户控制 (UAC) 决定用户的特权。 如果您是内置的 Administrators 组的成员,将为您分配两个运行时访问令牌:一个标准用户访问令牌和一个管理员访问令牌。 默认情况下,您拥有标准用户角色。 若要执行访问安全日志的代码,必须先将特权从标准用户提升到管理员。 你可以通过以下方式执行此操作:右键单击应用程序图标并指示需以管理员身份运行。

该类提供 EventLog 用于获取或设置接收跟踪或调试输出的事件日志的属性,以及 Name 用于保存该 EventLogTraceListener属性的名称的属性。

该方法 Close 关闭事件日志,使其不再接收跟踪或调试输出。 和WriteWriteLine方法将消息写入事件日志。

备注

为了避免将大量数据写入事件日志的可能性,该 EventLogTraceListener 日志不会输出属性指定的 TraceOutputOptions 可选跟踪数据。

构造函数

EventLogTraceListener()

在没有跟踪侦听器的情况下,初始化 EventLogTraceListener 类的新实例。

EventLogTraceListener(EventLog)

使用指定的事件日志初始化 EventLogTraceListener 类的新实例。

EventLogTraceListener(String)

使用指定的源初始化 EventLogTraceListener 类的新实例。

属性

Attributes

获取应用程序配置文件中定义的自定义跟踪侦听器特性。

(继承自 TraceListener)
EventLog

获取或设置要写入的事件日志。

Filter

获取或设置跟踪侦听器的跟踪筛选器。

(继承自 TraceListener)
IndentLevel

获取或设置缩进级别。

(继承自 TraceListener)
IndentSize

获取或设置缩进的空格数。

(继承自 TraceListener)
IsThreadSafe

获取一个值,该值指示跟踪侦听器是否是线程安全的。

(继承自 TraceListener)
Name

获取或设置此 EventLogTraceListener 的名称。

NeedIndent

获取或设置一个值,该值指示是否缩进输出。

(继承自 TraceListener)
TraceOutputOptions

获取或设置跟踪输出选项。

(继承自 TraceListener)

方法

Close()

关闭事件日志,以使其不再接收跟踪或调试输出。

CreateObjRef(Type)

创建一个对象,该对象包含生成用于与远程对象进行通信的代理所需的全部相关信息。

(继承自 MarshalByRefObject)
Dispose()

释放由 TraceListener 使用的所有资源。

(继承自 TraceListener)
Dispose(Boolean)

释放由 TraceListener 占用的非托管资源,还可以另外再释放托管资源。

(继承自 TraceListener)
Equals(Object)

确定指定对象是否等于当前对象。

(继承自 Object)
Fail(String)

实现 TraceListener 类时,向所创建的侦听器发出错误信息。

(继承自 TraceListener)
Fail(String, String)

实现 TraceListener 类时,向所创建的侦听器发出错误信息和详细错误信息。

(继承自 TraceListener)
Flush()

在派生类中被重写时,刷新输出缓冲区。

(继承自 TraceListener)
GetHashCode()

作为默认哈希函数。

(继承自 Object)
GetLifetimeService()
已过时。

检索控制此实例的生存期策略的当前生存期服务对象。

(继承自 MarshalByRefObject)
GetSupportedAttributes()

获取跟踪侦听器支持的自定义特性。

(继承自 TraceListener)
GetType()

获取当前实例的 Type

(继承自 Object)
InitializeLifetimeService()
已过时。

获取生存期服务对象来控制此实例的生存期策略。

(继承自 MarshalByRefObject)
MemberwiseClone()

创建当前 Object 的浅表副本。

(继承自 Object)
MemberwiseClone(Boolean)

创建当前 MarshalByRefObject 对象的浅表副本。

(继承自 MarshalByRefObject)
ToString()

返回表示当前对象的字符串。

(继承自 Object)
TraceData(TraceEventCache, String, TraceEventType, Int32, Object)

将跟踪信息、数据对象和事件信息写入事件日志中。

TraceData(TraceEventCache, String, TraceEventType, Int32, Object)

向特定于侦听器的输出中写入跟踪信息、数据对象和事件信息。

(继承自 TraceListener)
TraceData(TraceEventCache, String, TraceEventType, Int32, Object[])

将跟踪信息、数据对象的数组和事件信息写入事件日志中。

TraceData(TraceEventCache, String, TraceEventType, Int32, Object[])

向特定于侦听器的输出中写入跟踪信息、数据对象的数组和事件信息。

(继承自 TraceListener)
TraceEvent(TraceEventCache, String, TraceEventType, Int32)

向特定于侦听器的输出写入跟踪和事件信息。

(继承自 TraceListener)
TraceEvent(TraceEventCache, String, TraceEventType, Int32, String)

将跟踪信息、消息和事件信息写入事件日志中。

TraceEvent(TraceEventCache, String, TraceEventType, Int32, String)

向特定于侦听器的输出中写入跟踪信息、消息和事件信息。

(继承自 TraceListener)
TraceEvent(TraceEventCache, String, TraceEventType, Int32, String, Object[])

将跟踪信息、格式化对象数组和事件信息写入事件日志中。

TraceEvent(TraceEventCache, String, TraceEventType, Int32, String, Object[])

向特定于侦听器的输出中写入跟踪信息、格式化对象数组和事件信息。

(继承自 TraceListener)
TraceTransfer(TraceEventCache, String, Int32, String, Guid)

向侦听器特定的输出中写入跟踪信息、消息、相关活动标识和事件信息。

(继承自 TraceListener)
Write(Object)

实现 ToString() 类时,向所创建的侦听器写入对象的 TraceListener 方法值。

(继承自 TraceListener)
Write(Object, String)

实现 ToString() 类时,向所创建的侦听器写入类别名称和对象的 TraceListener 方法值。

(继承自 TraceListener)
Write(String)

将消息写入此实例的事件日志。

Write(String, String)

实现 TraceListener 类时,向所创建的侦听器写入类别名称和消息。

(继承自 TraceListener)
WriteIndent()

实现此类时,向所创建的侦听器写入缩进,并将 NeedIndent 属性重置为 false

(继承自 TraceListener)
WriteLine(Object)

实现 TraceListener 类时,向所创建的侦听器写入对象的 ToString() 方法值,后跟行结束符。

(继承自 TraceListener)
WriteLine(Object, String)

实现 TraceListener 类时,向所创建的侦听器写入类别名称和对象的 ToString() 方法值,后跟行结束符。

(继承自 TraceListener)
WriteLine(String)

将消息写入此实例的事件日志。

WriteLine(String, String)

实现 TraceListener 类时,向所创建的侦听器写入类别名称和消息,后跟行结束符。

(继承自 TraceListener)

适用于

线程安全性

此类型是线程安全的。

另请参阅