asp.net MVC日志插件Log4Net学习笔记一:保存日志到本地
2014-01-18 14:12
736 查看
log4net(Log For Net)是Apache开源的应用于.Net框架的日志记录工具,详细信息参见Apache网站.它是针对Java的log4j(Log For Java的)姊妹工具.用过log4j的都知道,它功能强大,可配置性灵活,线程安全,对日志的输出管理和级别管理方便。具体的使用方法往下看。
首先你应该下载log4net.dll并引入到你的项目References中,或者把源代码项目作为你工程的一部分加入到你的工程当中。单击这里下载Log4net 。
使用log4net需要知道其中两个比较重要的概念:logger 和 appender。前者是日志记录对象,后者是日志记录的目标,包括控制台,文件,定量大小的文件,远程广播。也就是说我们使用log4net的过程可以是这样的:获得一个用来记录日志的工具对象logger,然后为logger对象指定日志的记录位置.美妙的是,这一切工作都可以在Web.config配置文件中完成,所用的代码极少.
其配置如下:
先在web.config中的<configuration>节点下添加如下配置:
用过web.config自定义节点的朋友都知道,还应该配置log4net节点,接下来在<configuration>节点下添加如下log4net节点配置:
从上面的配置中可以看到定义了多个appender,每一个appender就是一个日志记录的目标。root节点指定了选用哪一个 appender. 在这里我选用了LogFileAppender。
到这里配置就基本上完成了,但是怎么使用上面的配置呢?log4net为我们提供了在应用程序启动时加载配置信息的入口,很简单,在Global.asax.cs的Application_Start过程中添加如下代码:
好了,到此为止整个配置过程完成了,下面是怎么调用的问题了。
新建一个log4nettest.aspx页面,在cs文件中添加引用 using log4net;定义本页的一个全局变量:
然后在Page_Load中添加如下代码:log.Debug("这是我在使用Log4Net");运行该页面,在C:\下面会生成一个Applog.txt文本文件,打开看看,里面就有你写入的日志。
首先你应该下载log4net.dll并引入到你的项目References中,或者把源代码项目作为你工程的一部分加入到你的工程当中。单击这里下载Log4net 。
使用log4net需要知道其中两个比较重要的概念:logger 和 appender。前者是日志记录对象,后者是日志记录的目标,包括控制台,文件,定量大小的文件,远程广播。也就是说我们使用log4net的过程可以是这样的:获得一个用来记录日志的工具对象logger,然后为logger对象指定日志的记录位置.美妙的是,这一切工作都可以在Web.config配置文件中完成,所用的代码极少.
其配置如下:
先在web.config中的<configuration>节点下添加如下配置:
<!--添加log4net配置节点--> <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
用过web.config自定义节点的朋友都知道,还应该配置log4net节点,接下来在<configuration>节点下添加如下log4net节点配置:
<!--log4net配置--> <log4net debug="false"> <appender name="LogFileAppender" type="log4net.Appender.FileAppender" > <param name="File" value="c:\Applog.txt" /> <param name="datePattern" value="yyyy-MM-dd HH:mm" /> <param name="AppendToFile" value="true" /> <layout type="log4net.Layout.PatternLayout"> <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" /> </layout> </appender> <appender name="HttpTraceAppender" type="log4net.Appender.ASPNetTraceAppender" > <layout type="log4net.Layout.PatternLayout"> <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" /> </layout> </appender> <appender name="EventLogAppender" type="log4net.Appender.EventLogAppender" > <layout type="log4net.Layout.PatternLayout"> <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" /> </layout> </appender> <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender"> <param name="File" value="C:\Log.txt" /> <param name="AppendToFile" value="true" /> <param name="MaxSizeRollBackups" value="10" /> <param name="MaximumFileSize" value="5MB" /> <param name="RollingStyle" value="Size" /> <param name="StaticLogFileName" value="true" /> <layout type="log4net.Layout.PatternLayout"> <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" /> </layout> </appender> <root> <level value="DEBUG" /> <appender-ref ref="LogFileAppender" /> </root> </log4net>
从上面的配置中可以看到定义了多个appender,每一个appender就是一个日志记录的目标。root节点指定了选用哪一个 appender. 在这里我选用了LogFileAppender。
到这里配置就基本上完成了,但是怎么使用上面的配置呢?log4net为我们提供了在应用程序启动时加载配置信息的入口,很简单,在Global.asax.cs的Application_Start过程中添加如下代码:
// 在应用程序启动时运行的代码 log4net.Config.DOMConfigurator.Configure();
好了,到此为止整个配置过程完成了,下面是怎么调用的问题了。
新建一个log4nettest.aspx页面,在cs文件中添加引用 using log4net;定义本页的一个全局变量:
private static readonly ILog log = LogManager.GetLogger(typeof(log4nettest));
然后在Page_Load中添加如下代码:log.Debug("这是我在使用Log4Net");运行该页面,在C:\下面会生成一个Applog.txt文本文件,打开看看,里面就有你写入的日志。
相关文章推荐
- asp.net MVC日志插件Log4Net学习笔记二:保存日志到sqlserver的配置
- sql server 关于表中只增标识问题 C# 实现自动化打开和关闭可执行文件(或 关闭停止与系统交互的可执行文件) ajaxfileupload插件上传图片功能,用MVC和aspx做后台各写了一个案例 将小写阿拉伯数字转换成大写的汉字, C# WinForm 中英文实现, 国际化实现的简单方法 ASP.NET Core 2 学习笔记(六)ASP.NET Core 2 学习笔记(三)
- 【Pro ASP.NET MVC 3 Framework】.学习笔记.4.MVC的主要工具-使用Moq
- ExtJS & ASP.NET MVC3.0 学习笔记二
- ASP.NET MVC 3 学习笔记系列之Music Store(2)
- ASP.Net MVC开发基础学习笔记(2):HtmlHelper与扩展方法
- ASP.NET MVC学习笔记2
- ASP.NET MVC 学习笔记(1)
- ASP.NET MVC 3.0 Razor 学习笔记之四
- ASP.Net MVC开发基础学习笔记:五、区域、模板页与WebAPI初步
- ASP.NET MVC Preview 4 学习笔记 Membership Authorization
- asp.net MVC 学习笔记目录
- ASP.NET MVC 学习笔记1 Talk about controller & route
- 【Pro ASP.NET MVC 3 Framework】.学习笔记.5.SportsStore一个真实的程序
- ASP.NET MVC 3 学习笔记系列之Music Store(3)
- ASP.NET MVC Web API 学习笔记---联系人增删改查
- ASP.NET MVC Web API 学习笔记---第一个Web API程序
- asp.net mvc的Routing、Controller、Filter学习笔记
- ASP.NET MVC学习笔记-Controller与View传值