AOP学习之Log4net
来源:互联网 发布:淘宝开店的优势 编辑:程序博客网 时间:2024/06/04 01:02
log4net库是Apache log4j框架在Microsoft.NET平台的实现,是一个帮助程序员将日志信息输出到各种目标(控制台、文件、数据库等)的工具。日志具备的优点:提供程序运行的精确环境,帮助开发人员找到程序中的bug。
安装:
Log4net的安装:
用户可以从http://logging.apache.org/log4net/下载log4net的源代码。解压软件包后,在解压的src目录下将log4net.sln载入Visual Studio .NET,编译后可以得到log4net.dll。用户要在自己的程序里加入日志功能,只需将log4net.dll引入工程即可。
log4net有四种主要的组件,分别是Logger(记录器),Repository(库), Appender(附着器)以及Layout(布局)
Logger(记录器)
Logger是应用程序需要交互的主要组件,它用来产生日志消息。产生的日志消息并不直接显示,还要预先经过Layout的格式化处理后才会输出。
Log4Net采用继承的框架。为什么要使用继承框架呢?
为了重用Logger对象,你不必将它在不同的类或对象间传递,只需要用它的名字为参数调用就可以了。
在log4Net中,有一个叫LogManager的类,用来管理logger对象,这个类中有一个GetLogger()静态方法,用来检查Logger对象是否存在,如果存在,就返回,如果不存在,它会自动为我们创建一个Logger对象。
log4net.ILoglog = log4net.LogManager.GetLogger("logger-name");
日志级别
从上到下,级别依次降低。在log4net框架里,通过设置配置文件,每个日志对象都被分配了一个日志优先级别,如果没有级别,那么日志会从他的祖先出继承一个级别。在Log4net的日志级别方法请求中,必须是请求方法的级别高于日志级别时,才会执行,否则不会执行。
例如:
创建了一个日志对象,并且把他的级别设置为INFO,那么下面的3个方法那个不会被执行呢,答案是第2个方法不会被执行,因为Debug的级别比INFO日志级别低。
Logger.Info("message");
Logger.Debug("message");
Logger.Warn("message");
Repository(库)
主要用于负责日志对象组织结构的维护。
Appender(附着器)
什么叫附着器?在这里我个人理解就是依赖于某一组件上而进行工作的组件。通过查阅资料知道了,附着器的主要作用是用来定义输入介质,这样我们就可以控制日志是输出到控制台还是输出到日志文件中了,一个好的框架就应该能够产生多目的的输出。
Layout
Layout 组件用于向用户显示最后经过格式化的输出信息。输出信息可以以多种格式显示,主要依赖于我们采用的Layout组件类型。
- AOP学习之Log4net
- log4net配置学习 之 日志等级
- log4net配置学习 之 日志等级
- log4net学习
- Log4Net学习
- log4net 学习
- Spring学习之AOP
- Spring学习之AOP
- 【Spring学习】之 AOP
- Spring学习之AOP
- AOP学习之路
- Spring学习之AOP
- spring之AOP学习
- Spring学习之AOP
- 学习AOP之认识一下Spring AOP
- 学习AOP之深入一点Spring Aop
- spring学习之AOP(一)
- spring学习之AOP(二)
- STM8 的MEMORY MODEL应用
- Android历程--结束的原因
- JS面向对象编程
- hdu1863 最小生成树基础
- i2c上拉电阻取值问题
- AOP学习之Log4net
- Geant4.10.01.p02例子学习-(basic)
- 远程登入开发板的几种方法(ssh,putty.exe,telnet,超级终端)
- 操作系统专题——进程与线程的区别
- 向lCD_1602显示屏输入字符
- java培训 2015-07-29
- 模板类的友元重载
- PLSQL登录不上
- 7.29学习笔记字符输入输出流