如何以编程方式修改My.Log设置配置

时间:2010-06-22 14:13:47

标签: .net vb.net logging settings

我们在Vb.Net中有几个应用程序使用内置的日志系统(My.Log)来编写日志信息。到目前为止,这个系统是在执行之前由application.config文件配置的,但现在我们想让用户选择一些选项。

有没有办法解析XML文件并处理它?是否有像My.Settings这样可以完成肮脏工作的东西?

提前致谢。

一个例子是能够将DefaultSwitch值从Verbose修改为Warning或更改FileLog的属性,如maxFiles属性:

<switches>
    <add name="DefaultSwitch" value="Verbose" />
</switches>
<sharedListeners>
<add name="FileLog" type="Sipro.Utils.ExtendedLogTraceListener, Sipro.Utils, Version=1.0.6.0, Culture=neutral, PublicKeyToken=null"
    autoflush="True"
    delimiter=" - "
    diskspaceexhaustedbehavior="DiscardMessages"
    includehostname="False"
    logfilecreationschedule="Daily"
    maxfiles="31"
    fullinformation="True"
    includeDate="True"
    includeTicks="True"/>

1 个答案:

答案 0 :(得分:1)

可能取决于您希望能够设置的设置,但是,例如,如果用户想要选择写入文件日志的路径,我认为这可能有效:

My.Log具有TraceSource属性,其中包含Listeners个集合。如果它包含FileLogTraceListener,您应该能够转换它,然后设置/获取它的Location属性。

EventLogTraceListener可以设置EventLog等。