上的日志将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 ????????????}
好了,完成,留着给以后的自己看
Log4Net配置
原文地址:https://www.cnblogs.com/lsgControl/p/9941558.html