官方文档 http://logging.apache.org/log4net/release/config-examples.html

C# 项目中直接使用nuget,下载Apache的log4net依赖包。

在项目的App.config中添加配置

   <configSections>

     <section name="log4net"

     type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />

   </configSections>

(Section一定要是configuration下的第一个子节点。)

下面是具体的Logger的配置,网上有很多参考,不赘述了。

 <log4net>

     <root>

       <level value="DEBUG" />

       <appender-ref ref="RollingFileAppender" />

       <level value="ALL" />

       <appender-ref ref="ConsoleAppender" />

     </root>

     <logger name="Test.Logging">

       <level value="ALL"/>

     </logger>

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

       <!--配置在root注册的appender-ref具体属性-->  

       <!--如果填写的目录已经有同名的文件,会出现不生成日志的情况,在每次测试后,一定记得删除测试文件-->

       <param name="File" value="../../../../Log//"/>

       <param name="StaticLogFileName" value="false" />

       <param name="DatePattern" value="yyyy-MM-dd.LOG" />

       <param name="AppendToFile" value="true"/>

       <!--不加utf-8编码格式,中文字符将显示成乱码-->

       <param name="Encoding" value="unicodeFFFE" />

       <!--保留的文件数-->

       <param name= "MaxSizeRollBackups" value= "-1"/>

       <!--每个日志文件的最大大小-->

       <!--可用的单位:KB|MB|GB-->

       <maximumFileSize value="200MB"/>

       <param name="lockingModel"  type="log4net.Appender.FileAppender+MinimalLock" />

       <!--输出格式-->>

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

         <param name="Header" value=""/>

         <param name="Footer" value=""/>

         <param name="ConversionPattern" value="%d %-5p  - %m%n" />

       </layout>

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

         <param name="LevelMin" value="WARN" />

         <param name="LevelMax" value="FATAL" />

         <!--只将这个范围内的日志保存进文件-->

         <!--ALL<DEBUG<INFO<WARN<ERROR<FATAL<None-->

       </filter>

     </appender>

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

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

         <param name="ConversionPattern"  value="%d [%t] %-5p - %m%n" />

       </layout>

     </appender>

   </log4net>

在AssemblyInfor.cs 中加入

[assembly: log4net.Config.XmlConfigurator(Watch = true)]

如果你的日志需要非常的多的配置,可以新开一个配置文件,可以查看他人文档,我并没有进行测试。

在项目入口加入

log4net.Config.XmlConfigurator.Configure();

用于自动加载App.config中配置的日志器属性。

Var logger = log4net.LogManager.GetLogger("Test.Logging");

就可以开始用了。

通过配置不同的filter,可以将不同等级的日志输出到不同的文件中

最新文章

  1. AgilePoint实例属性修改
  2. Java多线程--线程安全问题的相关研究
  3. T-SQL 基础学习 02
  4. JS数组的基本用法
  5. Wordpress实现站搜索
  6. Listview 隐藏item
  7. 【前端JS、后台C#】编码解码。
  8. 删除Excel中的打印预览留下的打印线
  9. fafu 1568 Matrix(二分匹配+二分)
  10. JavaBean讲解 规范
  11. Winsock编程基继承基础(网络对时程序)
  12. vs2017 在win10下安装后开始运行asp.net core 项目时出错
  13. 个股与指数的回归分析(自带python ols 参数解读)
  14. Codeforces 286B Shifting (看题解)
  15. 增强 用文本增强修改SAP标准屏幕中的字段名称 属于元素的文本增强
  16. [VC6] 小谈如何解决VC6.0 open崩溃的问题(已解决)(转)
  17. Spring学习----- Spring配置文件xml文档的schema约束
  18. Oracle FND API&ndash;Create User
  19. springframework resource
  20. (转)完美解决 Android WebView 文本框获取焦点后自动放大有关问题

热门文章

  1. win10 处理程序“ExtensionlessUrlHandler-Integrated-4.0”在其模块列表中有一个错误模块“ManagedPipelineHandler”
  2. 使用vue.js + laravel开发单页面应用
  3. EmailHelper
  4. 虚拟现实外包公司—VR游戏你不知道的以及你该知道的WebVR
  5. vue--数据显示模版上
  6. 两个python安装模块后 ImportError: No module named
  7. webpack点滴
  8. spring-data-redis HashOperations
  9. html5(二)
  10. Win10下安装zio