博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Log4Net日志组件使用
阅读量:5241 次
发布时间:2019-06-14

本文共 4255 字,大约阅读时间需要 14 分钟。

                                               Log4Net日志组件使用

 

概要:LogNet是一套开源的程序日志记录系统,经过配置后可以自动抓取程序中的错误、异常信息,并写入磁盘,也可以在异常发生时执行其他指定的操作

新建一个类库:Logger,封装一个LogHelper.cs

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace myOracle.Logger{    using log4net;           public class LogHelper        {            static LogHelper()            {                //在第一次使用此类的时候加载配置文件                SetConfig();            }            public static readonly log4net.ILog logError = log4net.LogManager.GetLogger("logerror");            public static readonly log4net.ILog logInfo = log4net.LogManager.GetLogger("logInfo");            ///             /// 默认配置。按配置文件            ///             public static void SetConfig()            {                log4net.Config.XmlConfigurator.Configure();            }            ///             /// 写信息。            ///             ///             public static void WriteInfoLog(string info)            {                if (logInfo.IsInfoEnabled)                {                    logInfo.Info(info);                }            }            ///             /// 写异常。            ///             ///             public static void WriteErrorLog(string errLog)            {                if (logError.IsErrorEnabled)                {                    logError.Error(errLog);                }            }            ///             /// 写警告。            ///             ///             public static void WriteWarnLog(string warnLog)            {                if (logError.IsWarnEnabled)                {                    logError.Warn(warnLog);                }            }              ///               /// 写日志。出错时会写入              ///               ///               ///               public static void WriteErrorLog(string info, Exception se)              {                  if (logError.IsErrorEnabled)                  {                      logError.Error(info, se);                  }              }        }    }

在我们的UI层中的webconfig配置文件中进行配置:

在我们的全局配置文件中进行一个简单的测试:

using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.Security;using System.Web.SessionState;namespace myOracle.UI{    using myOracle.Logger;    public class Global : System.Web.HttpApplication    {        protected void Application_Start(object sender, EventArgs e)        {            //若不想把lognet配置文件写在web.config中,也可以另外手动指定。           //XmlConfigurator.Configure(new FileInfo(HttpContext.Current.Server.MapPath("~/App_Data/log4net.config")));            LogHelper.WriteInfoLog("测试信息日志");        }        protected void Session_Start(object sender, EventArgs e)        {        }        protected void Application_BeginRequest(object sender, EventArgs e)        {        }        protected void Application_AuthenticateRequest(object sender, EventArgs e)        {        }        protected void Application_Error(object sender, EventArgs e)        {            Exception objExp = HttpContext.Current.Server.GetLastError();           LogHelper.WriteErrorLog("\r\n客户机IP:" + Request.UserHostAddress                + "\r\n错误地址:" + Request.Url                + "\r\n异常信息:" + Server.GetLastError().Message, objExp);        }        protected void Session_End(object sender, EventArgs e)        {        }        protected void Application_End(object sender, EventArgs e)        {        }    }}

在我们网站的根目录下会自动生成Log文件下的以日期的名称的日志文本文件:

 

 

本文仅用于学习!

END!

 

转载于:https://www.cnblogs.com/Francis-YZR/p/4800972.html

你可能感兴趣的文章
Leetcode: Unique Binary Search Trees II
查看>>
C++ FFLIB 之FFDB: 使用 Mysql&Sqlite 实现CRUD
查看>>
Spring-hibernate整合
查看>>
c++ map
查看>>
exit和return的区别
查看>>
discuz 常用脚本格式化数据
查看>>
洛谷P2777
查看>>
PHPStorm2017设置字体与设置浏览器访问
查看>>
Django 相关
查看>>
git init
查看>>
训练记录
查看>>
IList和DataSet性能差别 转自 http://blog.csdn.net/ilovemsdn/article/details/2954335
查看>>
Hive教程(1)
查看>>
第16周总结
查看>>
C#编程时应注意的性能处理
查看>>
Fragment
查看>>
比较安全的获取站点更目录
查看>>
苹果开发者账号那些事儿(二)
查看>>
使用C#交互快速生成代码!
查看>>
UVA11374 Airport Express
查看>>