.NET 2.0跟踪架构由四个主要部分组成:
来源- 这是跟踪信息的始发者。源用于发送跟踪消息。连接器/网提供的源的名称是
mysql.
。转变- 这定义了要发射的跟踪信息的级别。通常,这是指定的
app.config.
文件,因此不需要重新编译应用程序以更改跟踪级别。听众- 跟踪侦听器定义将写入跟踪信息的位置。支持的侦听器包括例如Visual Studio输出窗口,Windows事件日志和控制台。
筛选- 过滤器可以附加到侦听器。过滤器确定将写入的跟踪信息级别。虽然交换机定义将写入所有侦听器的信息级别,但是可以基于每个侦听器应用过滤器,以提供更精细的跟踪信息控制。
使用追踪mysql.data.mysqlclient.mysqltrace.可以用作连接器/网络的TraceSource,连接字符串必须包含“logging = true”。
要启用跟踪消息,请配置跟踪交换机。跟踪交换机与它们相关联的跟踪级别枚举,这些是离开那错误那警告那信息, 和verb。
mysqltrace.switch.level = sourcelevels.verbose;
这使得跟踪级别设置为verb,这意味着将写入所有跟踪消息。
能够更改跟踪水平而无需重新编译代码是方便的。这是通过在应用程序配置文件中指定跟踪级别来实现的,app.config.
。然后,您只需在配置文件中指定所需的跟踪级别并重新启动应用程序。跟踪源配置在其中system.diagnostics.
文件的一部分。以下XML片段显示:
... <源> ... 源> <交换机> <添加名称=“myswitch”值=“verbose”/> ... switches> ... configuration>
默认情况下,跟踪信息写入Microsoft Visual Studio的输出窗口。有多种侦听器可以附加到跟踪源,以便可以将跟踪消息写入各种目的地。您还可以创建自定义侦听器,以允许将跟踪消息写入其他目的地作为移动设备和Web服务。常用的侦听器示例是ConsoletroCelisterener.
,将跟踪消息写入控制台。
要在运行时添加侦听器,请使用以下代码:
ts.listeners.add(新的consoletracelistener());
然后,跟踪源对象上的呼叫方法以生成跟踪信息。例如,TraceInformation()
那traceevent()
, 或者tracedata()
可以使用方法。