博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
log4net小结
阅读量:5943 次
发布时间:2019-06-19

本文共 2266 字,大约阅读时间需要 7 分钟。

写在前面的:

在网上找的,再加上自己的心得

AssemblyInfo.cs:(加载配置文件也可以写到app.config中)

[assembly: log4net.Config.XmlConfigurator(ConfigFile = "systemconfig/log4net.xml", Watch = true)]

Test.cs:

ILog logger = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
log4net.xml(注意:要将此文件的属性设置为 如有较新的则复制):
<?xml version="1.0" encoding="utf-8" ?>
<configuration>

  <configSections>

    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"    />
  </configSections>

  <log4net>

    <root>
      <level value="all" />
      <appender-ref ref="RollingLogFileAppender" />
      <appender-ref ref="ConsoleAppender" />
    </root>
    <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender,log4net" >

      <file value="./logs/log.log" />

      <appendToFile value="true" />

      <rollingStyle value="Composite" />

      <datePattern value="yyyy-MM-dd&quot;.log&quot;" />

      <!--设置无限备份=-1 ,最大备份数为50-->
      <maxSizeRollBackups value="50"/>
      <!--每个文件的最大20k-->
      <maximumFileSize value="20"/>
      <!--
      <maximumFileSize value="50MB" />
      -->
      <!--名称是否可以更改:
           false为可以更改-->
      <param name="StaticLogFileName" value="false" />
     
      <layout type="log4net.Layout.PatternLayout">
        <param name="ConversionPattern" value="%d [%t] %-2p %c %method %L- %m%n"/>
      </layout>

      <filter type="log4net.Filter.LevelRangeFilter">

        <param name="LevelMin" value="DEBUG" />
        <param name="LevelMax" value="FATAL" />
      </filter>
    </appender>

    <appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender" >

      <layout type="log4net.Layout.PatternLayout">
        <param name="ConversionPattern" value="%d [%t] %-5p %c [%L] - %m%n" />
      </layout>
    </appender>

  </log4net>

补充:
Log4net中ConversionPattern的解释说明:

None.gif <layout type="log4net.Layout.PatternLayout">

None.gif <param name="Header" value=" -----------------------header-------------------------- " />
None.gif <param name="Footer" value="-----------------------footer-------------------------- " />
None.gif <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] %X{auth} - Line:%L %m%n" />
None.gif </layout>

%m(message):输出的日志消息,如ILog.Debug(…)输出的一条消息

%n(new line):換行
%d(datetime):输出当前语句运行的时刻
%r(run time):输出程序从运行到执行到当前语句时消耗的毫秒数
%t(thread id):当前语句所在的线程ID
%p(priority): 日志的当前优先级别,即DEBUG、INFO、WARN…等
%c(class):当前日志对象的名称
%L:输出语句所在的行号
%F:输出语句所在的文件名
%-数字:表示该项的最小长度,如果不够,则用空格填充

转载于:https://www.cnblogs.com/softidea/archive/2013/06/13/3133763.html

你可能感兴趣的文章
JSONPlaceholder使用
查看>>
java连接redis无法连接,报异常RedisConnectionException
查看>>
【luogu 3375】【模板】KMP字符串匹配
查看>>
MRI原理谁都看得懂版
查看>>
微软面试题 博弈论 经典案例 (参考答案)
查看>>
机器智能公司一览图 | 36氪
查看>>
ByteArrayOutputStream用法
查看>>
计算机操作原理进程调度算法---先来先服务,短进程优先(C语言)
查看>>
phantomjs学习资料
查看>>
Python 如何计算当前时间减少或增加一个月
查看>>
古老的SSM企业级应用
查看>>
saltstack之(二)软件包下载安装
查看>>
环境搭建实录一
查看>>
痞子衡嵌入式:第一本Git命令教程(7.1)- 清理之缓存(stash)
查看>>
素数表
查看>>
[转载]OBJECTIVE C (XCODE) 绘图功能简介
查看>>
Yii2.0 连接数据库
查看>>
013_RomanToInteger
查看>>
使用极光推送实现分组发送和服务端集成
查看>>
POJ 1170 Shoping Offers(IOI 95)
查看>>