Log4Net配置
上的日志将Debug、Error、Info、Warn的信息放在一个文件里,看着有些杂乱。我自己配置了一个将它们分开(今天双十一)放,看着舒服,下面是配置后得到效果
好了,接下来是步骤,
首先在 Nuget引用log4net包,此处内容跳过,
接下来是配置文件 控制台是App.config网站是web.config文件
1 <configSections> 2 <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net"/> 3 </configSections>
1 <log4net> 2 <!--根节点--> 3 <root> 4 <!--级别: ERROR 、 WARN 、 INFO 、 DEBUG --> 5 <level value="ERROR"/> 6 <level value="WARN"/> 7 <level value="INFO"/> 8 <level value="DEBUG"/> 9 <appender-ref ref="Error" /> 10 <appender-ref ref="Warn" /> 11 <appender-ref ref="Info" /> 12 <appender-ref ref="Debug" /> 13 </root> 14 <!-- 错误 Error.log--> 15 <appender name="Error" type="log4net.Appender.RollingFileAppender"> 16 <!--路径--> 17 <param name="File" value="Log/" /> 18 <!--文件名--> 19 <param name="DatePattern" value="yyyy-MM-dd/"Error.txt"" /> 20 <!--追加到文件--> 21 <appendToFile value="true"/> 22 <!--创建日志文件的方式,可选值:Date[日期],文件大小[Size],混合[Composite]--> 23 <rollingStyle value="Composite"/> 24 <!--写到一个文件--> 25 <staticLogFileName value="false"/> 26 <!--单个文件大小。单位:KB|MB|GB--> 27 <maximumFileSize value="10MB"/> 28 <!--最多保留的文件数,设为"-1"则不限--> 29 <maxSizeRollBackups value="-1"/> 30 <!--日志格式--> 31 <layout type="log4net.Layout.PatternLayout"> 32 <header value="[Begin]%newline" type="log4net.Util.PatternString" /> 33 <footer value="[End]%newline%newline" type="log4net.Util.PatternString" /> 34 <ConversionPattern value="%d - Error : %m%n" /> 35 </layout> 36 <filter type="log4net.Filter.LevelRangeFilter"> 37 <param name="LevelMin" value="ERROR" /> 38 <param name="LevelMax" value="ERROR" /> 39 </filter> 40 </appender> 41 42 <!-- 警告 Warn.log--> 43 <appender name="Warn" type="log4net.Appender.RollingFileAppender"> 44 <!--路径--> 45 <param name="File" value="Log/" /> 46 <!--文件名--> 47 <param name="DatePattern" value="yyyy-MM-dd/"Warn.txt"" /> 48 49 <!--追加到文件--> 50 <appendToFile value="true"/> 51 <!--创建日志文件的方式,可选值:Date[日期],文件大小[Size],混合[Composite]--> 52 <rollingStyle value="Composite"/> 53 <!--写到一个文件--> 54 <staticLogFileName value="false"/> 55 <!--单个文件大小。单位:KB|MB|GB--> 56 <maximumFileSize value="10MB"/> 57 <!--最多保留的文件数,设为"-1"则不限--> 58 <maxSizeRollBackups value="-1"/> 59 <!--日志格式--> 60 <layout type="log4net.Layout.PatternLayout"> 61 <header value="[Begin]%newline" type="log4net.Util.PatternString" /> 62 <footer value="[End]%newline%newline" type="log4net.Util.PatternString" /> 63 <ConversionPattern value="%d - Warn : %m%n" /> 64 </layout> 65 <filter type="log4net.Filter.LevelRangeFilter"> 66 <param name="LevelMin" value="WARN" /> 67 <param name="LevelMax" value="WARN" /> 68 </filter> 69 </appender> 70 71 <!-- 信息 Info.log--> 72 <appender name="Info" type="log4net.Appender.RollingFileAppender"> 73 <!--路径--> 74 <param name="File" value="Log/" /> 75 <!--文件名--> 76 <param name="DatePattern" value="yyyy-MM-dd/"Info.txt"" /> 77 <!--追加到文件--> 78 <appendToFile value="true"/> 79 <!--创建日志文件的方式,可选值:Date[日期],文件大小[Size],混合[Composite]--> 80 <rollingStyle value="Composite"/> 81 <!--写到一个文件--> 82 <staticLogFileName value="false"/> 83 <!--单个文件大小。单位:KB|MB|GB--> 84 <maximumFileSize value="10MB"/> 85 <!--最多保留的文件数,设为"-1"则不限--> 86 <maxSizeRollBackups value="-1"/> 87 <!--日志格式--> 88 <layout type="log4net.Layout.PatternLayout"> 89 <header value="[Begin]%newline" type="log4net.Util.PatternString" /> 90 <footer value="[End]%newline%newline" type="log4net.Util.PatternString" /> 91 <ConversionPattern value="%d - Info : %m%n" /> 92 </layout> 93 <filter type="log4net.Filter.LevelRangeFilter"> 94 <param name="LevelMin" value="INFO" /> 95 <param name="LevelMax" value="INFO" /> 96 </filter> 97 </appender> 98 99 <!-- 调试 Debug.log--> 100 <appender name="Debug" type="log4net.Appender.RollingFileAppender"> 101 <!--路径--> 102 <param name="File" value="Log/" /> 103 <!--文件名--> 104 <param name="DatePattern" value="yyyy-MM-dd/"Debug.txt"" /> 105 <!--追加到文件--> 106 <appendToFile value="true"/> 107 <!--创建日志文件的方式,可选值:Date[日期],文件大小[Size],混合[Composite]--> 108 <rollingStyle value="Composite"/> 109 <!--写到一个文件--> 110 <staticLogFileName value="false"/> 111 <!--单个文件大小。单位:KB|MB|GB--> 112 <maximumFileSize value="10MB"/> 113 <!--最多保留的文件数,设为"-1"则不限--> 114 <maxSizeRollBackups value="-1"/> 115 <!--日志格式--> 116 <layout type="log4net.Layout.PatternLayout"> 117 <header value="[Begin]%newline" type="log4net.Util.PatternString" /> 118 <footer value="[End]%newline%newline" type="log4net.Util.PatternString" /> 119 <ConversionPattern value="%d - Debug : %m%n" /> 120 </layout> 121 <filter type="log4net.Filter.LevelRangeFilter"> 122 <param name="LevelMin" value="DEBUG" /> 123 <param name="LevelMax" value="DEBUG" /> 124 </filter> 125 </appender> 126 127 128 </log4net>
日志的配置文件已经写好,接下来是使用
添加
[assembly:log4net.Config.XmlConfigurator() ]
可以放在AssemblyInfo类里面,也可以在类的命名空间上面
调用测试
1 var logger = LogManager.GetLogger(typeof(Program)); 2 for (int i = 0; i < 100000; i++) 3 { 4 logger.Info("ddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd"); 5 logger.Error("ddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd"); 6 logger.Debug("ddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd"); 7 logger.Warn("ddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd"); 8 9 }
好了,完成,留着给以后的自己看