1.0 下载并引用 log4net.dll

2.0 修改Web.config

 <configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net"/>
</configSections> <log4net>
<!--错误日志配置 :其中name 可以程序员自己定义,但是这个名字一定要和 <logger name="logerror">下面的
<appender-ref ref="ErrorAppender"/> 中 ref的值保持一致
-->
<appender name="ErrorAppender" type="log4net.Appender.RollingFileAppender">
<!--日志文件存储的位置是:Log\\LogError\\-->
<param name="File" value="Log\\LogError\\"/>
<!--表示将内容以追加的形式,保存到日志文件中-->
<param name="AppendToFile" value="true"/>
<!--每天的日志备份数可以有100个-->
<param name="MaxSizeRollBackups" value="100"/>
<!--表示每个日志文件的大小只能是10M-->
<param name="MaxFileSize" value="10240"/>
<!--文件名称是固定格式的-->
<param name="StaticLogFileName" value="false"/>
<!--文件名称是固定格式为:yyyyMMdd-->
<param name="DatePattern" value="yyyy-MM-dd&quot;.log&quot;"/>
<!--每天都是以yyyyMMdd来进行命名文件-->
<param name="RollingStyle" value="Date"/>
<!--设定写入的日志格式-->
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%n异常时间:%d [%t] %n异常级别:%-5p %n异 常 类:%c [%x] %n%m %n "/>
</layout>
</appender>
<!--log4net.LogManager.GetLogger("logerror")用这个来选择这种类型-->
<logger name="logerror">
<!--这个配置文件,如果配置成ALL:表示可以记录 1、信息日志(Info) 2、警告日志(Warn) 3、错误日志(Error)-->
<!--<level value="Error"/> 只会记录错误级别的日志-->
<level value="ALL"/>
<appender-ref ref="ErrorAppender"/>
</logger> </log4net>
<system.web>
<compilation debug="true" targetFramework="4.5" />
<httpRuntime targetFramework="4.5" />
</system.web> </configuration>

Web.config

3.0 LogHelper.cs 帮助类

 public class LogHelper
{
//通过配置文件的logerror 进行日志写入对象的实例化
public static readonly log4net.ILog logerror = log4net.LogManager.GetLogger("logerror"); //选择<logger name="logerror">的配置 static LogHelper()
{
SetConfig();
} /// <summary>
/// 初始化web.config中的<log4net>节点中的配置
/// </summary>
public static void SetConfig()
{
log4net.Config.XmlConfigurator.Configure();
} /// <summary>
/// 负责将信息日志写入到日志文件
/// </summary>
public static void WriteInfo(string msg)
{
//检查信息日志是否允许
if (logerror.IsInfoEnabled)
{
//表示写入信息级别的日志
logerror.Info(msg);
}
} /// <summary>
/// 负责将警告日志写入到日志文件
/// </summary>
public static void WriteWarn(string msg)
{
if (logerror.IsWarnEnabled)
{
//表示写入警告级别的日志
logerror.Warn(msg);
}
} /// <summary>
/// 负责将错误日志写入到日志文件
/// </summary>
public static void WriteError(string msg)
{
if (logerror.IsErrorEnabled)
{
//表示写入异常级别的日志
logerror.Error(msg);
}
}
}

public class LogHelper{...}

4.0 测试

 public partial class test : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
try
{
int i = ;
int j = ;
int c = j / i;
}
catch (Exception ex)
{
//记录到日志
LogHelper.WriteInfo(ex.ToString());
}
}
}

protected void Page_Load(object sender, EventArgs e){...}

最新文章

  1. [BZOJ3754]Tree之最小方差树
  2. jquery.cookie.js &amp;&amp; java后台代码 操作cookie实现记住当前用户输入信息代码
  3. C阶段【01】 - C基础
  4. ACM: HDU 1874 畅通工程续-Dijkstra算法
  5. css3 transform的基本用法和介绍
  6. 【codevs 1200】【NOIP 2012】同余方程 拓展欧几里德求乘法逆元模板题
  7. Swift开发学习-03 Swift技巧
  8. [Locked] Flatten 2D Vector
  9. PHP 读取EXCEL
  10. js实现的文章输入检查与测速。(纯js版本)
  11. linux 生成随机密码和wordlist常用方法
  12. java thread 线程锁同步,锁,通信
  13. C++ crash 堆栈信息获取
  14. CSS3 Transform、Transition和Animation属性总结
  15. wpf、winform仿QQ靠边隐藏
  16. fetch添加超时时间
  17. SQLServer数据集合的交、并、差集运算
  18. kali linux升级
  19. android开发 RecyclerView 列表布局
  20. NOIP2018划水记

热门文章

  1. The Swiss Army Knife of Data Structures … in C#
  2. 持续集成及部署利器:Go
  3. HTML5- Canvas入门(三)
  4. APOC 15 Years Celebration
  5. C#+OpenGL+FreeType显示3D文字(1) - 从TTF文件导出字形贴图
  6. 2013 duilib入门简明教程 -- 部分bug 2 (14)
  7. 轻量级前端MVVM框架avalon - 模型转换
  8. Lightmaping
  9. python统计某一个进程名所占用的内存
  10. MVC4做网站六后台管理:6.2网站信息设置