log4net-使用多个附加器记录日志
我想将消息记录到文本框和文件。我发现了一个登录到TextBox的示例。我修改了app.config并用另一个appender扩展它 配置文件如下所示:log4net-使用多个附加器记录日志,log4net,Log4net,我想将消息记录到文本框和文件。我发现了一个登录到TextBox的示例。我修改了app.config并用另一个appender扩展它 配置文件如下所示: <?xml version="1.0" encoding="utf-8" ?> <configuration> <configSections> <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHa
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
</configSections>
<appSettings>
<add key="log4net.Internal.Debug" value="false"/>
</appSettings>
<system.diagnostics>
<trace autoflush="true">
<listeners>
<add name="textWriterTraceListener"
type="System.Diagnostics.TextWriterTraceListener"
initializeData="C:\log4net_internal.log"/>
</listeners>
</trace>
</system.diagnostics>
<log4net>
<appender name="NotifyAppender" type="log4netSample.Logging.NotifyAppender" >
<layout type="log4net.Layout.PatternLayout">
<param name="Header" value="[Header]\r\n" />
<param name="Footer" value="[Footer]\r\n" />
<param name="ConversionPattern" value="%d [%t] %-5p %c %m%n" />
</layout>
</appender>
<appender name="LogFileAppender" type="log4net.Appender.FileAppender">
<param name="File" value="c:\PrestAba.log" />
<param name="AppendToFile" value="true" />
<layout type="log4net.Layout.PatternLayout">
<param name="Header" value="[Header]\r\n" />
<param name="Footer" value="[Footer]\r\n" />
<param name="ConversionPattern" value="%d [%t] %-5p %c %m%n" />
</layout>
</appender>
<root>
<level value="ALL" />
<appender-ref ref="NotifyAppender" />
<appender-ref ref="LogFileAppender" />
</root>
</log4net>
</configuration>
当我运行应用程序并编写日志消息时,它只记录文本框。是否需要进行更多修改?我认为必须转义您的文件名才能读取:
<param name="File" value="c:\\PrestAba.log" />
而且,你可以把它浓缩成
<file value="c:\\PrestAba.log" />
它更具可读性,更符合log4net创建可读和可维护XML的意图。一个建议是在appSettings中将log4net.Internal.Debug设置为true,以查看XMLConfigurator如何拾取和读取配置文件。