log4net是.Net下一个非常优秀的开源日志记录组件。log4net记录日志的功能非常强大。它可以将日志分不同的等级,以不同的格式,输出到不同的媒介。
日志分类:
1,Info
2,Debug
3,Warn
4,Error
5,Fatal
存储类型:
ADONetAppender 数据库方式
SmtpAppender 发邮件
LogFileAppender 服务器端日志文件
ColoredConsoleAppender 还没用过
EventLogAppender windows日志
NetSendAppender
RollingFile 还没用过
先看效果:

文件存储

数据库存储

邮件存储
本文主要是简单的介绍怎么使用:
第一步:添加引用

第二步:添加配置 ,在Web.config 文件中进行添加configSections的节点 如下图所示,

第三步:添加日志配置类型及存储类型,如果是数据库存储需要提前建好数据表,配置好数据库连接字符串,文件存储需要指定日志文件路径和文件名,邮件发送需要配置邮件协议,具体会在代码中有,
<log4net debug="true">
<!--<logger name="logerror">
<level value="ERROR" />
<appender-ref ref="ADONetAppender" />
</logger>
<logger name="loginfo">
<level value="INFO" />
<appender-ref ref="InfoAppender" />
</logger>-->
<logger name="Loggering">
<level value="Warn"/>
<appender-ref ref="ADONetAppender"/>
</logger>
<root>
<level value="info" />
<!--<appender-ref ref="ADONetAppender" />-->
<appender-ref ref="ADONetAppender"/>
<!--<appender-ref ref="LogFileAppender"/>
<appender-ref ref="ColoredConsoleAppender"/>
<appender-ref ref="EventLogAppender"/>
<append-ref ref="NetSendAppender"/>
<appender-ref ref="RollingFile"/>-->
</root>
<appender name="ErrorAppender" type="log4net.Appender.RollingFileAppender">
<param name="File" value="C:\App_Log\ErrorLog.log" />
<param name="AppendToFile" value="true" />
<param name="MaxSizeRollBackups" value="100" />
<param name="MaximumFileSize" value="1MB" />
<param name="RollingStyle" value="Size" />
<param name="StaticLogFileName" value="true" />
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%-5p %d [%c] %m%n" />
</layout>
</appender>
<appender name="InfoAppender" type="log4net.Appender.RollingFileAppender">
<param name="File" value="C:App_Log\InfoLog.log" />
<param name="AppendToFile" value="true" />
<param name="MaxSizeRollBackups" value="100" />
<param name="MaximumFileSize" value="1MB" />
<param name="RollingStyle" value="Size" />
<param name="StaticLogFileName" value="true" />
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%-5p %d [%c] %m%n" />
</layout>
</appender>
</log4net>
文件路径配置:

文件路径配置

邮件配置

数据库配置
create table _log
(
id int identity(1,1) primary key not null,
date datetime null,
thread int null,
level varchar(10) null,
logger varchar(20) null,
Message varchar(100) null,
Exception varchar(100) null
)
数据库日志表脚本
第四步:写日志
gloab.asax.cs文件 中Application_Start()方法里第一行加:
log4net.Config.XmlConfigurator.Configure();
再在要记录的日志文件里加日志记录,如下所示
private static readonly log4net.ILog log =
log4net.LogManager.GetLogger("Loggering");
string message = string.Format("错误消息:{0},方法名:{1},参数:{2}", ex.Message, "JsonResult Login", Request.Params.ToString());
log.Debug(message);
log.Error(message);
log.Fatal(message);
log.Warn(message);
log.Info(message);
来源:https://www.cnblogs.com/langhua/p/3826515.html