.net网站的log4net的使用
第一步:引用 log4net.dll (注意版本)
第二步:在网站根目录下的 Global.asax 文件中的Application_Start方法中添加如下代码
protected void Application_Start(object sender, EventArgs e) { //1,读取配置文件中的内容,进行初始化 log4net.Config.XmlConfigurator.Configure(); }
第三步:在网站根目录下的 Web.config 文件中添加如下代码
<?xml version="1.0" encoding="utf-8"?> <!-- 有关如何配置 ASP.NET 应用程序的详细信息,请访问 http://go.microsoft.com/fwlink/?LinkId=169433 --> <configuration> <!--在.net 的配置文件中,默认不会直接支持log4net--> <configSections> <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net"/> </configSections> <!--我们就可以在配置文件中直接配置log4net,注意名字的来源--> <log4net> <!--统一设置的日志器--> <root> <level value="Error" /> <appender-ref ref="LogFileAppender" /> </root> <!--输出到文本文件的Appender--> <appender name="LogFileAppender" type="log4net.Appender.FileAppender" > <!--文件名称--> <param name="File" value="log-file.txt" /> <!--追加模式--> <param name="AppendToFile" value="true" /> <!--使用的布局--> <layout type="log4net.Layout.PatternLayout"> <param name="Header" value="[Header]\r\n"/> <param name="Footer" value="[Footer]\r\n"/> <!--输出的格式--> <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n"/> </layout> </appender> </log4net> <system.web> <!--用户自定义错误转向页面--> <customErrors mode="On" defaultRedirect="error.html"> <error statusCode="404" redirect="404.html"/> </customErrors> <compilation debug="true" targetFramework="4.5" /> <httpRuntime targetFramework="4.5" /> </system.web> </configuration>
第四步:在可能出现错误页面(WebForm1.aspx)的后台.cs文件中添加如下代码
protected void Page_Error(object sender, EventArgs e) { //获取刚刚抛出的未处理的异常 Exception exception = this.Server.GetLastError(); //2,需要取得一个日志器 log4net.ILog logger = log4net.LogManager.GetLogger(typeof(WebForm1)); logger.Error(exception.Message); }
第五步:整理自定义的错误页面,即 Web.config 文件中的error.html和404.html
这两个页面,我想大家都会弄吧