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 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 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 23 <rollingStyle value="Composite"/> 24 25 <staticLogFileName value="false"/> 26 27 <maximumFileSize value="10MB"/> 28 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 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 52 <rollingStyle value="Composite"/> 53 54 <staticLogFileName value="false"/> 55 56 <maximumFileSize value="10MB"/> 57 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 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 80 <rollingStyle value="Composite"/> 81 82 <staticLogFileName value="false"/> 83 84 <maximumFileSize value="10MB"/> 85 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 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 108 <rollingStyle value="Composite"/> 109 110 <staticLogFileName value="false"/> 111 112 <maximumFileSize value="10MB"/> 113 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 }
好了,完成,留着给以后的自己看