一、Log4j的组成
1. Logger组件(记录器组件负责产生日志)
2. Appender组件(信息通过Appender组件输出到目的地,控制台、文件等)
3. Layout组件(负责格式化输出的日志信息)
二、简单配置log4j.properties
详细配置文档下载地址:
http://download.csdn.net/detail/u011631266/6542375
log4j.rootLogger=WARN,INFO,stdout,file
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%-5p%d{yyyy-MM-dd(HH:mm:ss)} %c - %m%n
log4j.appender.file=org.apache.log4j.DailyRollingFileAppender
log4j.appender.file.File=F:/ch19.log
log4j.appender.file.Append=true
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%-5p%d{yyyy-MM-dd(HH:mm:ss)} %c - %m%n
#JDBC,此处创建的记录器相应的类或包下面有打印语句时才能记录日志
log4j.logger.java.sql.Connection=DEBUG
log4j.logger.java.sql.Statement=DEBUG
log4j.logger.java.sql.PreparedStatement=DEBUG
三、使用Log4j
1. 导入Log4j所需jar包
2. 得到日志记录器,继承于根记录器
static Logger logger = Logger.getLogger(Hello.class);
3. 读取配置文件(若log4j.properties放在项目的src下可省略此步)
String prefix = getServletContext().getRealPath("/"); //得到上下文路径在服务器上的真实路径
String file = getInitParameter("log4j-init-file"); //得到web.xml中配置文件的相对路径
if(file != null)
{
PropertyConfigurator.configure(prefix+file); //读取key-value形式的配置文件
}
//web.xml中 log4j-init-file 配置
<servlet>
<servlet-name>Hello</servlet-name>
<servlet-class>test.Hello</servlet-class>
<init-param>
<param-name>log4j-init-file</param-name>
<!--<param-value>WEB-INF/log4j.properties</param-value>-->
<!--<param-value>WEB-INF/jdbc.properties</param-value>-->
<param-value>WEB-INF/log4j.xml</param-value>
</init-param>
</servlet>
4. 插入记录日志的语句
//级别有DEBUG、INFO、WARN、ERROR、FATAL
logger.info("main");
logger.error(e.getMessage(),e);
分享到:
相关推荐
但前段时间第一次用 struts 2 整合 hibernate 写一个小小的书店租赁管理系统时出了好些问题,输出语句添了又删,删了又添,搞得有点小郁闷,于是花了半个晚上学下 Log4j ,掌握了一点它的基本原理。
Log4j详解,详细讲解log4j的使用,和原理
log4j的使用习惯,让每个类都拥有一个private static的Logger对象,用来输出该类中的全部日志信息 ,使用xml文件来完成对log4j环境的配置。在项目的main class中的静态初始化块里放log4j环境的配置代码。注意:在一...
log4j日志原理。日志输出的自实现。自己的日志框架,不需要使用任何框架和jar包。纯java代码实现日志输出到控制台和指定位置的文件。日志文件后缀名多元化。 下载后请评论,评论反积分。可加入QQ群135430763共同学习...
apache log4j 日志系统实现原理.doc,Apache Log4j 学习笔记 Apache Logging Project Homepage: http://logging.apache.org
禁用与使用日志请求只是Log4j其中的一个小小的地方,Log4j日志系统允许把日志输出到不同的地方,如控制台(Console)、文件(Files)、根据天数或者文件大小产生新的文件、以流的形式发送到其它地方等等。...
本资源里面包含了在java project工程下如何使用log4j,在java web工程(servlet和struts2)下如何使用log4j,并且对log4j的加载机制,原理进行了详细的介绍和解释,代码部分也进行了详细的注释,值得你看看。
记录一下log4j2 RCE的原理
该文档包含了 log4j的原理讲解,jar包,以及实例,帮助初学者迅速上手,。。。
log4j是Java的日志系统,此教程与手册讲述了log4j的原理、其包含的组件及配置,还包含log4j_api(可快速查找到你需要的信息)
这个文档资料描述了log4j API,它的独特的特性和设计原理。Log4j是由许多作者共同参与的开放源代码项目。它允许开发人员以任意的精细程度控制哪些日志说明被输出。通过使用外部的配置文件,可以在运行时配置它。最好...
Kafka及Log4j实现日志集中管理功能的相关程序代码,了解kafka工作原理
NULL 博文链接:https://adrain-work-163-com.iteye.com/blog/1545091
主要介绍了log4j2 自动删除过期日志文件配置及实现原理解析,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
一本全面介绍log4j原理,配置,使用的书。
这篇文章描述了Log4j的API、独一无二的特色和设计原理。Log4j是一个聚集了许多作者劳动成果的开源软件项目。它允许开发人眼以任意的粒度输出日志描述信息。它利用外部的配置文件,在运行时是完全可配置的。最厉害的...
log4j.properties的具体配置方法和实例,其中有我自己总接的方法和下载的原理TXT文档,以及我自己写的实例,初学者还是可以参考的
Log6j在Log5j的基础上具有以下附加功能: Logback支持:Log5j默认情况下使用Log4j,但是现在无法仅使用Log4j来使用某些库(并且不可以,使用SLF4J也不理想)。 细节对象:Log6j支持在日志语句中添加可选的,任意的...
本文主要描述Log4j的API的唯一特性和它的设计原理。Log4j是一个基于许多作者的开放源码的项目。它允许开发员以任意的间隔来控制日志的输出。它通过设在外部的配置文件而达到运行时灵活的设置。最重要的是,Log4j有一...
weblogic,log4j,druid,hibernate,spring,struts2,hutoolDb,Oracle连接池配置,连接泄露检测及简要原理说明 连接关了关,怎么用druid检测