aspx页面使用log4net记录日志步骤(单独log4net.config文件)

来源:互联网 发布:如何搭建网络服务器 编辑:程序博客网 时间:2024/06/06 20:35

1.引用dll

2.web.config配置

<configuration>  <configSections>    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net-net-1.0"  />  </configSections>  <system.web>    <compilation debug="true" targetFramework="4.0" />  </system.web></configuration>

3.log4net.config配置

<?xml version="1.0" encoding="utf-8" ?><log4net>  <logger name="logerror">    <level value="ERROR" />    <appender-ref ref="ErrorAppender" />  </logger>  <logger name="loginfo"><level value="INFO" /><appender-ref ref="InfoAppender" /></logger>  <appender name="ErrorAppender" type="log4net.Appender.RollingFileAppender">    <param name="File" value="Log\\LogError\\" />    <param name="AppendToFile" value="true" />    <param name="MaxSizeRollBackups" value="100" />    <param name="MaxFileSize" value="10240" />    <param name="StaticLogFileName" value="false" />    <param name="DatePattern" value="yyyyMMdd".htm"" />    <param name="RollingStyle" value="Date" />    <layout type="log4net.Layout.PatternLayout">      <param name="ConversionPattern" value="<HR COLOR=red>%n异常时间:%d [%t] <BR>%n异常级别:%-5p <BR>%n异 常 类:%c [%x] <BR>%n%m <BR>%n <HR Size=1>"  />    </layout>  </appender>  <appender name="InfoAppender" type="log4net.Appender.RollingFileAppender"><param name="File" value="Log\\LogInfo\\" /><param name="AppendToFile" value="true" /><param name="MaxFileSize" value="10240" /><param name="MaxSizeRollBackups" value="100" /><param name="StaticLogFileName" value="false" /><param name="DatePattern" value="yyyyMMdd".htm"" /><param name="RollingStyle" value="Date" /><layout type="log4net.Layout.PatternLayout"><param name="ConversionPattern" value="<HR COLOR=blue>%n日志时间:%d [%t] <BR>%n日志级别:%-5p <BR>%n日 志 类:%c [%x] <BR>%n%m <BR>%n <HR Size=1>"  />     </layout></appender></log4net>
同时,右键该文件,属性--“复制到输出目录”选择“如果较新则复制”--“生成操作”选择“无”。

4.AssemblyInfo.cs文件增加一行:[assembly: log4net.Config.XmlConfigurator(ConfigFile = "log4net.config", Watch = true)]

5.global.asax.cs文件

public class Global : System.Web.HttpApplication    {        protected void Application_Start(object sender, EventArgs e)        {            log4net.Config.XmlConfigurator.Configure(new System.IO.FileInfo("log4net.config"));        }        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.WriteLog("客户机IP:" + Request.UserHostAddress + "<br />错误地址:" + Request.Url + "<br />异常信息:" + Server.GetLastError().Message, objExp);        }        protected void Session_End(object sender, EventArgs e)        {        }        protected void Application_End(object sender, EventArgs e)        {        }    }

6.写个助手类LogHelper.cs

 public class LogHelper    {        public static readonly log4net.ILog loginfo = log4net.LogManager.GetLogger("loginfo");        public static readonly log4net.ILog logerror = log4net.LogManager.GetLogger("logerror");        public static void WriteLog(string info)        {            if (loginfo.IsInfoEnabled)            {                loginfo.Info(info);            }        }        public static void WriteLog(string info, Exception se)        {            if (logerror.IsErrorEnabled)            {                logerror.Error(info, se);            }        }      }
7.跑个页面测试。


















0 0
原创粉丝点击