我有一个使用log4net的应用程序。我将调试转储到一个文件以及stdout。正常启动应用程序时,我会在输出部分和文件中看到所有消息。
如果我创建了一个类/运行了一个函数,该函数在立即窗口中向日志中写入了一些内容,那么在输出和立即窗口中都看不到任何内容。不过,我确实在文件中看到了日志。
有什么办法可以修复它,这样我就可以在即时窗口中看到这些消息了吗?
Log4net配置:
<log4net>
<root>
<level value="DEBUG"/>
<appender-ref ref="FileAppender"/>
<appender-ref ref="ConsoleAppender"/>
<appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender">
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date{dd.MM.yyyy HH:mm:ss.ffff} [%thread] %level %logger%exception - %message%newline"/>
</layout>
</appender>
<appender name="FileAppender" type="log4net.Appender.RollingFileAppender">
<file value="logs/log.txt" />
<appendToFile value="true" />
<rollingStyle value="Size" />
<maxSizeRollBackups value="1" />
<maximumFileSize value="1MB" />
<staticLogFileName value="true" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date{dd.MM.yyyy HH:mm:ss.ffff} [%thread] %level %logger%exception - %message%newline"/>
</layout>
</appender>
</root>
</log4net>
将DebugAppender
添加到您的配置中,以便在即时窗口中显示消息(我在VS2013上测试了这一点)
<root>
<level value="DEBUG" />
<appender-ref ref="FileAppender" />
<appender-ref ref="ConsoleAppender" />
<appender-ref ref="DebugAppender" />
</root>
<appender name="DebugAppender" type="log4net.Appender.DebugAppender">
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date{dd.MM.yyyy HH:mm:ss.ffff} [%thread] %level %logger%exception - %message%newline" />
</layout>
</appender>