码迷,mamicode.com
首页 > Web开发 > 详细

使用Log4net 日志系统

时间:2018-04-18 19:16:12      阅读:238      评论:0      收藏:0      [点我收藏+]

标签:malloc   head   logger   console   参考   bsp   manage   minimal   evel   

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

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

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

 

1   <configSections>
2 
3     <section name="log4net"
4 
5     type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
6 
7   </configSections>

 

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

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

  

 1 <log4net>
 2 
 3     <root>
 4 
 5       <level value="DEBUG" />
 6 
 7       <appender-ref ref="RollingFileAppender" />
 8 
 9       <level value="ALL" />
10 
11       <appender-ref ref="ConsoleAppender" />
12 
13     </root>
14 
15     <logger name="Test.Logging">
16 
17       <level value="ALL"/>
18 
19     </logger>
20 
21     <appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender" >
22 
23       <!--配置在root注册的appender-ref具体属性-->  
24 
25       <!--如果填写的目录已经有同名的文件,会出现不生成日志的情况,在每次测试后,一定记得删除测试文件-->
26 
27       <param name="File" value="../../../../Log//"/>
28 
29       <param name="StaticLogFileName" value="false" />
30 
31       <param name="DatePattern" value="yyyy-MM-dd.LOG" />
32 
33       <param name="AppendToFile" value="true"/>
34 
35       <!--不加utf-8编码格式,中文字符将显示成乱码-->
36 
37       <param name="Encoding" value="unicodeFFFE" />
38 
39       <!--保留的文件数-->
40 
41       <param name= "MaxSizeRollBackups" value= "-1"/>
42 
43       <!--每个日志文件的最大大小-->
44 
45       <!--可用的单位:KB|MB|GB-->
46 
47       <maximumFileSize value="200MB"/>
48 
49       <param name="lockingModel"  type="log4net.Appender.FileAppender+MinimalLock" />
50 
51       <!--输出格式-->>
52 
53       <layout type="log4net.Layout.PatternLayout">
54 
55         <param name="Header" value=""/>
56 
57         <param name="Footer" value=""/>
58 
59         <param name="ConversionPattern" value="%d %-5p  - %m%n" />
60 
61       </layout>
62 
63       <filter type="log4net.Filter.LevelRangeFilter">
64 
65         <param name="LevelMin" value="WARN" />
66 
67         <param name="LevelMax" value="FATAL" />
68 
69         <!--只将这个范围内的日志保存进文件-->
70 
71         <!--ALL<DEBUG<INFO<WARN<ERROR<FATAL<None-->
72 
73       </filter>
74 
75     </appender>
76 
77     <appender name="ConsoleAppender"  type="log4net.Appender.ConsoleAppender" >
78 
79       <layout type="log4net.Layout.PatternLayout">
80 
81         <param name="ConversionPattern"  value="%d [%t] %-5p - %m%n" />
82 
83       </layout>
84 
85     </appender>
86 
87   </log4net>

 

在AssemblyInfor.cs 中加入

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

 

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

 

在项目入口加入

log4net.Config.XmlConfigurator.Configure();

 

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

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

 

就可以开始用了。

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

使用Log4net 日志系统

标签:malloc   head   logger   console   参考   bsp   manage   minimal   evel   

原文地址:https://www.cnblogs.com/Fivee/p/8876234.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!