使用My.Applicaton.Log和My.Log对象生成Application 日志 (Visual Basic)
使用 Application 日志 (Visual Basic)
My.Applicaton.Log 和 My.Log 对象,可以轻松地将日志记录和跟踪信息写入日志。
首先,使用日志的 TraceSource 属性的 Switch 属性检查消息的严重性。 TraceListener 集合中指定的跟踪侦听器。 Switch 属性进行比较。 如果消息的严重性足够高,侦听器将写出该消息。
WriteEntry 方法的消息传送到日志跟踪侦听器的 WriteLine 方法:
如果程序集没有配置文件,则 My.Application.Log 和 My.Log 对象将写入应用程序的调试输出(通过 DefaultTraceListener 类)。 My.Application.Log 对象将写入程序集的日志文件(通过 FileLogTraceListener 类),而 My.Log 对象写入 ASP.NET 网页输出(通过 WebPageTraceListener 类)。
以调试模式运行应用程序时,可以在 Visual Studio 的“输出”窗口中查看调试输出。 “输出”窗口,请单击“调试”菜单项,指向“窗口”,然后单击“输出”。 “输出”窗口中,从“显示以下输出”框中选择“调试”。
默认情况下,My.Application.Log 将日志文件写入用户应用程序数据路径中。 DefaultFileLogWriter 对象的 FullLogFileName 属性获取该路径。 该路径的格式如下:
BasePath\CompanyName\ProductName\ProductVersion
BasePath 的典型值如下所示。
username\Application Data
CompanyName、ProductName 和 ProductVersion 的值来自应用程序的程序集信息。 AssemblyName.log,其中 AssemblyName 是程序集的不带扩展名的文件名。 AssemblyName–iteration.log,其中 iteration 是正 Integer。
Log 对象具有默认的实现,该实现能够在没有应用程序配置文件 app.config 的情况下工作。 若要更改默认设置,必须添加具有新设置的配置文件。 演练:筛选 My.Application.Log 输出 (Visual Basic)。
日志配置节位于 app.config 文件的主 <configuration> 节点的 <system.diagnostics> 节点中。 日志信息在几个节点中定义:
- Log 对象的侦听器在名为 DefaultSource 的 <sources> 节点中定义。
- Log 对象的严重性筛选器在名为 DefaultSwitch 的 <switches> 节点中定义。
- <sharedListeners> 节点中定义。
<sources>、<switches> 和 <sharedListeners> 节点的示例:
<configuration> <system.diagnostics> <sources> <source name="DefaultSource" switchName="DefaultSwitch"> <listeners> <add name="FileLog"/> </listeners> </source> </sources> <switches> <add name="DefaultSwitch" value="Information" /> </switches> <sharedListeners> <add name="FileLog" type="Microsoft.VisualBasic.Logging.FileLogTraceListener, Microsoft.VisualBasic, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL" initializeData="FileLogWriter" /> </sharedListeners> </system.diagnostics> </configuration>