Fork me on GitHub
posts - 148,  comments - 5,  views - 84842

整合log4j

 slf4j 核心jar  : slf4j-api-1.6.1.jar 。slf4j是日志框架,将其他优秀的日志第三方进行整合。

      slf4j------过度的jar-----log4j

 整合导入jar包

       log4j 核心包:log4j-1.2.17.jar

       过渡jar(整合jar):slf4j-log4j12-1.7.5.jar

  导入配置文件

       log4j.properties  ,此配置文件通知log4j 如何输出日志

  配置文件内容:

       1.记录器

       2.输出源

       3.布局

  记录器

       例如: log4j.rootLogger=info, stdout,file

       格式:log4j.rootLogger=日志级别, 输出源1,输出源2,。。。。

       log4j 日志级别 : fatal 致命错误 error 错误 warn 警告 info 信息 debug 调试信息 trace 堆栈信息 (由高到底顺序)

 输出源:

       例如:log4j.appender.file=org.apache.log4j.FileAppender

       格式:log4j.appender.输出源的名称=输出源的实现类

              名称:自定义

              实现类:log4j提供

       输出源属性例如:log4j.appender.file.File=d\:mylog.log

       输出源属性格式:log4j.appender.名称.属性=值

              每一个输出源对应一个实现类,实现类都属性(setter),底层执行setter方法进行赋值

 

 常见的输出源实现类

       org.apache.log4j.FileAppender  输出文件中

              file ,表示文件输出位置

       org.apache.log4j.ConsoleAppender 输出到控制台

              Target ,表示使用哪种输出方式,在控制台打印内容,取值:System.out / System.err

 布局  -- 确定输出格式

       例如:log4j.appender.stdout.layout=org.apache.log4j.PatternLayout

       格式:log4j.appender.数据源.layout=org.apache.log4j.PatternLayout

       布局属性:log4j.appender. 数据源.layout.ConversionPattern=值

              12:56:30,123  info

 扩展:对指定的目录设置日志级别

       例如:log4j.logger.org.hibernate.transaction=debug

       格式:log4j.logger.包结构=级别

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#
# Hibernate, Relational Persistence for Idiomatic Java
#
# License: GNU Lesser General Public License (LGPL), version 2.1 or later.
# See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
#
 
### direct log messages to stdout ###
log4j.appender.stdout=org.apache.log4j.ConsoleAppender   //表示在控制台输出信息
log4j.appender.stdout.Target=System.out//表示在输出方式out/err
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout  //布局  确定输出格式
log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n   //部署属性,  数据源值
 
### direct messages to file hibernate.log ###
#log4j.appender.file=org.apache.log4j.FileAppender    //表示文件输出信息
#log4j.appender.file.File=hibernate.log
#log4j.appender.file.layout=org.apache.log4j.PatternLayout
#log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n
 
### set log levels - for more verbose logging change 'info' to 'debug' ###
 
log4j.rootLogger=warn, stdout
 
#log4j.logger.org.hibernate=info
log4j.logger.org.hibernate=debug
 
### log HQL query parser activity
#log4j.logger.org.hibernate.hql.ast.AST=debug
 
### log just the SQL
#log4j.logger.org.hibernate.SQL=debug
 
### log JDBC bind parameters ###
log4j.logger.org.hibernate.type=info
#log4j.logger.org.hibernate.type=debug
 
### log schema export/update ###
log4j.logger.org.hibernate.tool.hbm2ddl=debug
 
### log HQL parse trees
#log4j.logger.org.hibernate.hql=debug
 
### log cache activity ###
#log4j.logger.org.hibernate.cache=debug
 
### log transaction activity
#log4j.logger.org.hibernate.transaction=debug
 
### log JDBC resource acquisition
#log4j.logger.org.hibernate.jdbc=debug
 
### enable the following line if you want to track down connection ###
### leakages when using DriverManagerConnectionProvider ###
#log4j.logger.org.hibernate.connection.DriverManagerConnectionProvider=trace  

 

部署属性值

1
2
3
4
5
6
7
8
9
10
如果使用pattern布局就要指定的打印信息的具体格式ConversionPattern,打印参数如下:
%m 输出代码中指定的消息;
%M 输出打印该条日志的方法名;
%p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL;
%r 输出自应用启动到输出该log信息耗费的毫秒数;
%c 输出所属的类目,通常就是所在类的全名;
%t 输出产生该日志事件的线程名;
%n 输出一个回车换行符,Windows平台为"rn”,Unix平台为"n”;
%d 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyyy-MM-dd HH:mm:ss,SSS},输出类似:2002-10-18 22:10:28,921;
%l 输出日志事件的发生位置,及在代码中的行数;

  

 

posted on   TopTime  阅读(185)  评论(0编辑  收藏  举报
< 2025年1月 >
29 30 31 1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31 1
2 3 4 5 6 7 8

点击右上角即可分享
微信分享提示