Log4Net使用技巧
Log4Net使用技巧
1.Log4Net简介
2.Log4Net 下载
3.使用步骤
<?xml version="1.0" encoding="utf-8"?> <!-- 有关如何配置 ASP.NET 应用程序的详细消息,请访问 http://go.microsoft.com/fwlink/?LinkId=169433 --> <configuration> <configSections> <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/> </configSections> <log4net> <!-- 定义日志记录类型为 滚动文件类型 --> <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender"> <!-- 定义日志文件的位置,此为网站根目录下的Log文件夹下的Moumoulog.txt文件 --> <file value="Log/Moumoulog.txt"/> <!-- 日志 追加在日志文件中 --> <appendToFile value="true"/> <!--日志最大个数,都是最新的--> <maxSizeRollBackups value="10"/> <!--每个日志文件的最大容量,超过该容量自动创建 新的日志文件--> <maximumFileSize value="1024KB"/> <rollingStyle value="Size"/> <!--置为true,当前最新日志文件名永远为file节中的名字--> <staticLogFileName value="true"/> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="%date [%thread] %-5level %logger - %message%newline"/> </layout> </appender> <root> <!--日志记录级别,默认是DEBUG--> <level value="DEBUG"/> <appender-ref ref="RollingLogFileAppender"/> </root> </log4net> <appSettings> <!-- 连接字符串是否加密 --> <add key="ConStringEncrypt" value="false"/> <!-- 数据库连接字符串,(如果采用加密方式,上面一项要设置为true;加密工具,可在官方下载, 如果使用明文这样server=127.0.0.1;database=.....,上面则设置为false。 --> <add key="ConnectionString" value="server=.\sqlexpress;database=WordFilter;uid=sa;pwd=hello"/> </appSettings> <system.web> <compilation debug="true" targetFramework="4.0" /> <httpRuntime requestValidationMode="2.0" /> </system.web> </configuration>
3.3 Common类库添加log4net的引用:
3.4 Common类库添加LogHelper.cs类文件
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO; namespace Moumou.Enterprise.Common { public class LogHelper { //log4net日志专用 public static readonly log4net.ILog loginfo = log4net.LogManager.GetLogger("loginfo"); public static readonly log4net.ILog logerror = log4net.LogManager.GetLogger("logerror"); <span style="white-space:pre"> </span>
<span style="white-space:pre"> </span>//设置log4net获取配置信息、从配置文件获取 public static void SetConfig() { log4net.Config.XmlConfigurator.Configure(); } <span style="white-space:pre"> </span>//<span style="font-family: Arial, Helvetica, sans-serif;">从文件获取</span> public static void SetConfig(FileInfo configFile) { log4net.Config.XmlConfigurator.Configure(configFile); } /// <summary> /// 普通的文件记录日志 /// </summary> /// <param name="info"></param> public static void WriteLog(string info) { if (loginfo.IsInfoEnabled) { loginfo.Info(info); } } /// <summary> /// 错误日志 /// </summary> /// <param name="info"></param> /// <param name="se"></param> public static void WriteLog(string info, Exception se) { if (logerror.IsErrorEnabled) { logerror.Error(info, se); } } } }
3.5 在Global.asax文件的Application_Start方法启动调用log4net
protected void Application_Start(object sender, EventArgs e) { LogHelper.SetConfig(); LogHelper.WriteLog("系统启动"); }
3.6 在Application_Error记录错误日志
protected void Application_Error(object sender, EventArgs e) { //在出现未处理的错误时运行的代码 Exception objExp = HttpContext.Current.Server.GetLastError(); LogHelper.WriteLog("异常:" + Server.GetLastError().Message, objExp); }
记录错误日志如下:
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。