记录的日志类别主要有FATAL(致命错误)、ERROR(一般错误)、WARN(警告)、INFO(一般信息)、DEBUG(调试信息)五种。
1.在配置文件中添加以下配置节,并在顶级节点<configuration>下增加<log4net>子节点。
<configSections>
<section name ="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net"/>
</configSections>
2.在<log4net>节点下增加<appender>子节点,每个<appender>子节点代表一种记录日志的方式,但并不代表启用。
<appender name="errorAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="ERROR" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<PreserveLogFileNameExtension value="true" />
<!--日志文件名开头-->
<File value="\Logs\err.log" />
<!--是否追加到文件-->
<appendToFile value="true" />
<!--混合使用日期和文件大小变换日志文件名-->
<rollingStyle value="Composite" />
<!--日期的格式-->
<datePattern value="yyyyMMddHHmm" />
<!--最大变换数量-->
<maxSizeRollBackups value="1000" />
<!--最大文件大小-->
<maximumFileSize value="10MB" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date %logger - %message%newline" />
</layout>
</appender>
其中ERROR是日志类别的一种,其余四种不再单独列出,配置类似。将日志分门别类,便于查找需要的文件及时排查错误原因。
3. 在<log4net>节点下增加<root>子节点,每个< root >子节点代表启用记录日志的方式。
<root>
<level value="ALL" />
<appender-ref ref="errorAppender" />
<appender-ref ref="infoAppender" />
<appender-ref ref="debugAppender" />
</root>
其中ALL表示全部启用,OFF表示全部禁用,其余表示启用相应的日志记录。
4. 在<log4net>节点下增加<logger>子节点,每个< logger >子节点代表某个模块启用记录日志的方式,可以避免日志过快增长,但会影响读写性能,可以结合实际情况适当选用。配置文件格式同<root>节点。
5.在web应用程序的全局配置文件的Application_Start事件中,添加如下代码:
XmlConfigurator.Configure();
在需要记录日志的地方调用如下代码:
ILog log = LogManager.GetLogger("Test");
log.Error("ERROR");
不同的日志类别调用不同的方法,可以把异常信息也传入到日志文件中以便于查找问题与排除故障。其中创建日志记录组建实例也可以使用下面的代码,将更加方便。
ILog log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
相关参数简写附注:
%m:输出的日志消息
%n:换行
%d:输出当前语句运行的时刻
%r:输出程序从运行到执行到当前语句时消耗的毫秒数
%t:当前语句所在的线程ID
%p:日志的当前优先级别
%c:当前日志对象的名称
%l:输出语句所在的行号
%f:输出语句所在的文件名
%-数字—表示该项的最小长度,若不够则用空格填充
附详细配置文件具体说明,由于配置文件过长而将类似配置节部分省略,这些配置节不一定要同时使用甚至有些配置节是互斥的,应该根据实际情况适当选择配置节:
12 3 4 56 7 748 9 31 3210 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 33 37 3834 35 36 39 40 7341 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 63 6458 59 60 61 62 65 68 6966 67 70 7271