首页 新闻 会员 周边 捐助

log4net无法输出日志

0
悬赏园豆:20 [已解决问题] 解决于 2016-08-22 11:18

我在将log4net集成weiapi中,我想要的输出效果是

每天在站点的根目录log文件夹下面生成一个以日期为名称的文件夹

例如

   log\20160820\error.log

       log\20160820\info.log

一个用来记录异常,一个记录信息

我使用了以下配置

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />
  </configSections>
  <log4net debug="true">
    <!-- 错误日志类-->
    <logger name="logerror">
      <level value="Error" />
      <appender-ref ref="ErrorAppender" />
    </logger>
    <!-- 信息日志类 -->
    <logger name="loginfo">
      <level value="Info" />
      <appender-ref ref="InfoAppender" />
    </logger>
    <!-- 错误日志附加介质-->
    <appender name="ErrorAppender" type="log4net.Appender.RollingFileAppender">
      <param name="File" value="Log\\" />
      <param name="AppendToFile" value="true" />
      <param name="MaxSizeRollBackups" value="100" />
      <param name="MaxFileSize" value="10240" />
      <param name="StaticLogFileName" value="false" />
      <param name="DatePattern" value="Error/yyyy-MM-dd/&quot;Error.log&quot;"  />
      <param name="RollingStyle" value="Date" />
      <!--布局-->
      <layout type="log4net.Layout.PatternLayout">
        <param name="ConversionPattern" value="记录时间:%date 线程ID:[%thread] 日志级别:%-5level 记录类:%logger     操作者ID:%property{Operator} 操作类型:%property{Action}%n             当前机器名:%property%n当前机器名及登录用户:%username %n               记录位置:%location%n 消息描述:%property{Message}%n                    异常:%exception%n 消息:%message%newline%n%n" />
      </layout>
    </appender>
    <!-- 信息日志附加介质-->
    <appender name="InfoAppender" type="log4net.Appender.RollingFileAppender">
      <param name="File" value="Log\\" />
      <param name="AppendToFile" value="true" />
      <param name="MaxFileSize" value="10240" />
      <param name="MaxSizeRollBackups" value="100" />
      <param name="StaticLogFileName" value="false" />
      <param name="DatePattern" value="Info/yyyy-MM-dd/&quot;Info.log&quot;"  />
      <param name="RollingStyle" value="Date" />
      <!-- 信息日志布局-->
      <layout type="log4net.Layout.PatternLayout">
        <param name="ConversionPattern" value="记录时间:%date 线程ID:[%thread] 日志级别:%-5level 记录类:%logger     操作者ID:%property{Operator} 操作类型:%property{Action}%n             当前机器名:%property%n当前机器名及登录用户:%username %n               记录位置:%location%n 消息描述:%property{Message}%n                    异常:%exception%n 消息:%message%newline%n%n" />
      </layout>
    </appender>
  </log4net>
</configuration>

现在的情况是,文件夹和文件可以创建,但是异常不能输出

           try
            {
                var i = new int[] { };
                var s = i[5];
            }
            catch (Exception ex)
            {
                log.Error(ex.ToString());
                log.Info(ex.ToString());
            }

上面是我输出异常的代码,现在可以确定的是,问题再配置文件这边,请大神帮忙看看哪里有问题。

问题补充:

我是用的log4net版本是 1.2.15.0

SeeThrough的主页 SeeThrough | 初学一级 | 园豆:189
提问于:2016-08-20 11:01
< >
分享
最佳答案
0
ILog log = log4net.LogManager.GetLogger("logerror");

GetLogger()的参数需要指定为配置文件中设定的logger name。

收获园豆:20
dudu | 高人七级 |园豆:30778 | 2016-08-20 12:12

是这个原因,非常感谢

SeeThrough | 园豆:189 (初学一级) | 2016-08-22 11:17
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册