词条 | 日志侦听器 |
释义 | 可以使用 My.Application.Log 和 My.Log 对象记录有关应用程序中发生的事件的信息。 Log 对象可以使用日志筛选来限制它所记录的信息量。如果筛选配置不正确,则日志可能包含错误的信息。 但是,如果日志配置不正确,则可能需要有关其当前配置的更多信息。可以通过日志的 TraceSource 高级属性获取此信息。 为代码中的日志对象确定日志侦听器 1.在代码文件的开头导入 System.Diagnostics 命名空间。 Visual Basic Imports System.Diagnostics 2.创建一个函数,用于返回由每个日志侦听器的信息组成的字符串。 Visual Basic Function GetListeners(ByVal listeners As TraceListenerCollection) As String Dim ret As String = "" For Each listener As TraceListener In listeners ret &= listener.Name Dim listenerType As Type = listener.GetType If listenerType Is GetType(DefaultTraceListener) Then Dim tmp As DefaultTraceListener = _ DirectCast(listener, DefaultTraceListener) ret &= ": Writes to the debug output." ElseIf listenerType Is GetType(Logging.FileLogTraceListener) Then Dim tmp As Logging.FileLogTraceListener = _ DirectCast(listener, Logging.FileLogTraceListener) ret &= ": Log filename: " & tmp.FullLogFileName ElseIf listenerType Is GetType(EventLogTraceListener) Then Dim tmp As EventLogTraceListener = _ DirectCast(listener, EventLogTraceListener) ret &= ": Event log name: " & tmp.EventLog.Log ElseIf listenerType Is GetType(XmlWriterTraceListener) Then Dim tmp As Diagnostics.XmlWriterTraceListener = _ DirectCast(listener, XmlWriterTraceListener) ret &= ": XML log" ElseIf listenerType Is GetType(ConsoleTraceListener) Then Dim tmp As ConsoleTraceListener = _ DirectCast(listener, ConsoleTraceListener) ret &= ": Console log" ElseIf listenerType Is GetType(DelimitedListTraceListener) Then Dim tmp As DelimitedListTraceListener = _ DirectCast(listener, DelimitedListTraceListener) ret &= ": Delimited log" Else ret &= ": Unhandeled log type: " & _ listenerType.ToString End If ret &= vbCrLf Next Return ret End Function 3.将日志的跟踪侦听器集合传递给 GetListeners 函数,并显示返回值。 Visual Basic Dim ListenerCollection As TraceListenerCollection ListenerCollection = My.Application.Log.TraceSource.Listeners Dim ListenersText As String = GetListeners(ListenerCollection) MsgBox(ListenersText) 有关更多信息,请参见 TraceSource 属性(My.Application.Log 和 My.Log)。 |
随便看 |
|
百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。