请在即时窗口中查看log4net的调试消息

Bar*_*ski 7 c# log4net immediate-window

我有一个使用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>
Run Code Online (Sandbox Code Playgroud)

sam*_*amy 12

添加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>
Run Code Online (Sandbox Code Playgroud)