【问题标题】:Log4Net not logging error in release mode (.net console APP)Log4Net 在发布模式下未记录错误(.net 控制台 APP)
【发布时间】:2019-07-20 04:11:36
【问题描述】:

您好,我在控制台 APP 中使用 Log4Net

这是程序集文件中的配置

[程序集:log4net.Config.XmlConfigurator(ConfigFile = "log4net.config", Watch = true)]

下面是log4net.config

 <?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <log4net>
    <appender name="InfoRollingLogFileAppender"

    type="log4net.Appender.RollingFileAppender,log4net">
      <param name="File" value="WarningLogger.txt" />
      <param name="AppendToFile" value="true" />
      <param name="MaxSizeRollBackups" value="10" />
      <param name="MaximumFileSize" value="10240KB" />
      <param name="RollingStyle" value="Size" />
      <param name="StaticLogFileName" value="true" />
      <param name="Threshold" value="DEBUG"/>
      <layout type="log4net.Layout.PatternLayout,log4net">
        <param name="ConversionPattern" value="%p [%d{dd MMM HH:mm:ss}][%l]- %m%n" />
      </layout>
      <filter type="log4net.Filter.LevelRangeFilter">
        <levelMin value="WARN" />
        <levelMax value="WARN" />
      </filter>
    </appender>
    <root>
      <level value="debug" />
      <appender-ref ref="InfoRollingLogFileAppender" />
      <appender-ref ref="ErrorRollingLogFileAppender" />
    </root>
  </log4net>
</configuration>

为了初始化 log4net,我使用以下配置。

  private static readonly log4net.ILog Log = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);

这东西在调试模式下完美运行。相同的配置在发布模式下不起作用。

如果有解决办法请告诉我

【问题讨论】:

    标签: log4net


    【解决方案1】:

    当你初始化静态方法时,没有 GetCurrentMethod().DeclaringType。这可能就是它在发布模式下不起作用的原因。

    【讨论】:

      【解决方案2】:

      通过在控制台中添加启动文件或程序文件的配置来解决它。

       XmlConfigurator.Configure(new FileInfo(ConfigurationManager.AppSettings["log4net-config-file"]));
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-05-13
        相关资源
        最近更新 更多