一、什么是Log4j
log4j--log for java(java的日志):是Apache为我们提供了一个强有力的日志操作包。通过Log4j的语言接口,您可以在Java、C、C++、.Net、PL/SQL程序中使用Log4j,其语法和用法与在Java程序中一样,使得多语言分布式系统得到一个统一一致的日志组件模块。而且,通过使用各种第三方扩展,您可以很方便地将Log4j集成到J2EE、JINI甚至是SNMP应用中。
二、Log4j的配置模板
复制代码
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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91#系統启动日志 --> 调试日志 --> 信息日志 --> 警告日志 --> 错误日志 #定义日志输入级别,以及不同输出目的地(第1位为:日志级别;其他的是输出目的地的自定义名称) log4j.rootLogger=debug,console,i,w,e,druid #定义日志输出目的地 (控制台) log4j.appender.console=org.apache.log4j.ConsoleAppender #定义日志以什么形式进行输出,黑色System.out 红色System.err log4j.appender.console.Target=System.out #定义日志输出时,以什么格式进行输出 log4j.appender.console.layout=org.apache.log4j.PatternLayout # %d 发生的时间 %p 日志级别 %c发生在哪个类 %l 发生在哪一行 %m 日志信息 %n换行 log4j.appender.console.layout.ConversionPattern=%d{yyyy-MM-dd hh:mm:ss} %p %c %l --%m%n #日志输出到控制台的最低级别(控制台中输出:DEBUG以上的所有的日志) log4j.appender.console.Threshold=DEBUG #定义日志输入目的地 (文件) log4j.appender.i=org.apache.log4j.RollingFileAppender #设置具体的文件路径 log4j.appender.i.File=d:/logs/ssh-info.log #设置文件最大容量 log4j.appender.i.MaxFileSize=50MB #设置文件备份数量 log4j.appender.i.maxBackupIndex=5 #设置文件输出方式:覆盖|追加(true) log4j.appender.i.Append=true #日志输出到文件的最低级别 log4j.appender.i.Threshold=INFO #定义日志输出时,以什么格式进行输出 log4j.appender.i.layout=org.apache.log4j.PatternLayout log4j.appender.i.layout.ConversionPattern=%d{yyyy-MM-dd hh:mm:ss} %p %c %l %m%n #定义日志文件中,最低记录级别,以及最高记录级别 log4j.appender.i.filter.infoFilter=org.apache.log4j.varia.LevelRangeFilter log4j.appender.i.filter.infoFilter.levelMin=INFO log4j.appender.i.filter.infoFilter.levelMax=INFO #定义日志输入目的地 (文件) log4j.appender.w=org.apache.log4j.RollingFileAppender #设置具体的文件路径 log4j.appender.w.File=d:/logs/ssh-warn.log #设置文件最大容量 log4j.appender.w.MaxFileSize=50MB #设置文件备份数量 log4j.appender.w.maxBackupIndex=5 #设置文件输出方式:覆盖|追加(true) log4j.appender.w.Append=true #日志输出到文件的最低级别 log4j.appender.w.Threshold=WARN #定义日志输出时,以什么格式进行输出 log4j.appender.w.layout=org.apache.log4j.PatternLayout log4j.appender.w.layout.ConversionPattern=%d{yyyy-MM-dd hh:mm:ss} %p %c %l %m%n #定义日志文件中,最低记录级别,以及最高记录级别 log4j.appender.w.filter.infoFilter=org.apache.log4j.varia.LevelRangeFilter log4j.appender.w.filter.infoFilter.levelMin=WARN log4j.appender.w.filter.infoFilter.levelMax=WARN #定义日志输入目的地 (文件) log4j.appender.e=org.apache.log4j.RollingFileAppender #设置具体的文件路径 log4j.appender.e.File=d:/logs/ssh-error.log #设置文件最大容量 log4j.appender.e.MaxFileSize=50MB #设置文件备份数量 log4j.appender.e.maxBackupIndex=5 #设置文件输出方式:覆盖|追加(true) log4j.appender.e.Append=true #日志输出到文件的最低级别 log4j.appender.e.Threshold=ERROR #定义日志输出时,以什么格式进行输出 log4j.appender.e.layout=org.apache.log4j.PatternLayout log4j.appender.e.layout.ConversionPattern=%d{yyyy-MM-dd hh:mm:ss} %p %c %l %m%n #定义日志文件中,最低记录级别,以及最高记录级别 log4j.appender.e.filter.infoFilter=org.apache.log4j.varia.LevelRangeFilter log4j.appender.e.filter.infoFilter.levelMin=ERROR log4j.appender.e.filter.infoFilter.levelMax=ERROR #定义druid监控程序中,从warn级别的日志开始记录,并且指定记录位置为druid(目的地) #可以在Druid官网上搜到,不必自己配置 log4j.logger.druid.sql=warn,druid log4j.logger.druid.sql.DataSource=warn,druid log4j.logger.druid.sql.Connection=warn,druid log4j.logger.druid.sql.Statement=warn,druid log4j.logger.druid.sql.ResultSet=warn,druid log4j.appender.druid=org.apache.log4j.RollingFileAppender log4j.appender.druid.File=d:/logs/druid.log log4j.appender.druid.MaxFileSize=50MB log4j.appender.druid.maxBackupIndex=5 log4j.appender.druid.Append=true log4j.appender.druid.Threshold=WARN log4j.appender.druid.layout=org.apache.log4j.PatternLayout log4j.appender.druid.layout.ConversionPattern=%d{yyyy-MM-dd hh:mm:ss} %p %c %l %m%n
三、运用在代码中
我们在需要输出日志信息的类中做如下的三个工作:
1、导入所有需的commons-logging类:
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
2、在自己的类中定义一个org.apache.commons.logging.Log类的私有静态类成员:
private final Log log = LogFactory.getLog(getClass());
LogFactory.getLog()方法的参数使用的是当前类的class。
3、使用org.apache.commons.logging.Log类的成员方法输出日志信息:
if (log.isDebugEnabled()){
log.debug("111");
}
if (log.isInfoEnabled()){
log.info("222");
}
if (log.isWarnEnabled()){
log.warn("333");
}
if (log.isErrorEnabled()){
log.error("444");
}
if (log.isFatalEnabled()){
log.fatal("555");
}
最后
以上就是哭泣服饰最近收集整理的关于Log4j的配置介绍一、什么是Log4j二、Log4j的配置模板三、运用在代码中的全部内容,更多相关Log4j内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复