一、开发环境
编译器:VS2013
.Net版本:4.5
二、开发流程
1.从nuget上获取log4net
2.配置log4net的配置文件
1 <?xml version="1.0" encoding="utf-8" ?> 2 <configuration> 3 4 <configSections> 5 <section name="log4net" type="System.Configuration.IgnoreSectionHandler" /> 6 </configSections> 7 8 <log4net debug="false"> 9 <root> 10 <level value="ALL"/> 11 <appender-ref ref="UserLogAppender"/> 12 <appender-ref ref="SystemLogAppender"/> 13 </root> 14 <!--信息日志--> 15 <appender name="UserLogAppender" type="log4net.Appender.RollingFileAppender,log4net"> 16 <!--日志路径--> 17 <file value="./Log/"/> 18 <!--日志名格式:20151113_user.log--> 19 <param name="DatePattern" value="yyyyMMdd"_user.log""/> 20 <!--是否是向文件中追加日志--> 21 <param name="AppendToFile" value="true"/> 22 <!--log保留天数--> 23 <param name="MaxSizeRollBackups" value="10"/> 24 <!--log最大文件大小--> 25 <param name="MaximumFileSize" value="5MB"/> 26 <!--日志文件名是否固定不变的--> 27 <param name="StaticLogFileName" value="false"/> 28 <!--日志根据XX滚动--> 29 <param name="RollingStyle" value="Composite"/> 30 <!--布局--> 31 <layout type="log4net.Layout.PatternLayout,log4net"> 32 <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n"/> 33 <param name="Header" value=""/> 34 </layout> 35 <filter type="log4net.Filter.LevelRangeFilter"> 36 <param name="LevelMin" value="INFO"/> 37 <param name="LevelMax" value="INFO"/> 38 </filter> 39 </appender> 40 <!--警告,注意,通知,错误日志--> 41 <appender name="SystemLogAppender" type="log4net.Appender.RollingFileAppender,log4net"> 42 <file value="./Log/"/> 43 <param name="File" value="Loglog_sys.log" /> 44 <param name="DatePattern" value="yyyyMMdd"_sys.log""/> 45 <param name="AppendToFile" value="true"/> 46 <param name="RollingStyle" value="Composite"/> 47 <param name="MaxSizeRollBackups" value="10"/> 48 <param name="MaximumFileSize" value="5MB"/> 49 <param name="StaticLogFileName" value="false"/> 50 <layout type="log4net.Layout.PatternLayout,log4net"> 51 <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss}%newline%message%n"/> 52 <param name="Header" value=""/> 53 </layout> 54 <filter type="log4net.Filter.LevelRangeFilter"> 55 <param name="LevelMin" value="ERROR"/> 56 <param name="LevelMax" value="ErrOR"/> 57 </filter> 58 </appender> 59 </log4net> 60 61 </configuration>
3.在AssembInfo.cs中添加信息
[assembly :log4net.Config.XmlConfigurator(Watch = true)]
4.控制台程序
namespace Demo.Log4Net { class Program { static void Main(string[] args) { ILog log = LogManager.GetLogger(typeof(LogHelper)); log.Info("info"); log.Error("error"); Console.ReadKey(); } } }