java从入门到入土(log4j)


log4j  生成日志文件

使用方法:

一.导入log4j jar包,并添加到构造路径;

二.src下新建log4j的配置文件log4j.properties 如下

### login4j的配置  ###
log4j.rootLogger=a,b

### a 配置控制台记录日志的方式   ###
log4j.appender.a=org.apache.log4j.ConsoleAppender
log4j.appender.a.Target=System.err
log4j.appender.a.layout = org.apache.log4j.SimpleLayout

### b 配置文件记录日志的方式 debug.log ###
log4j.appender.b=org.apache.log4j.FileAppender
log4j.appender.b.File=d://debug.log
log4j.appender.b.Threshold=debug
log4j.appender.b.layout=org.apache.log4j.PatternLayout
log4j.appender.b.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss}%l %F %p %m%n

1. log4j.rootLogger= ×××××××××××

定义日志输出位置,跟下面的内容有关

2. log4j.appender.* =

定义输出类型

org.apache.log4j.ConsoleAppender(控制台),

org.apache.log4j.FileAppender(文件),

org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件),

org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件)

org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)

3. log4j.appender.×.layout=×××××××××××

定义名为stdout的输出端的layout是哪种类型

HTMLLayout(以HTML表格形式布局),PatternLayout(可以灵活地指定布局模式),SimpleLayout(包含日志信息的级别和信息字符串),TTCCLayout(包含日志产生的时间、线程、类别等等信息)

 4. log4j.appender.stdout.layout.ConversionPattern=

输出的信息格式

%m 输出代码中指定的消息

%p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL

%r 输出自应用启动到输出该log信息耗费的毫秒数

%c 输出所属的类目,通常就是所在类的全名

%t 输出产生该日志事件的线程名

%n 输出一个回车换行符,Windows平台为“rn”,Unix平台为“n”

%d 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyyy MMM dd HH:mm:ss,SSS},输出类似:2002年10月18日 22:10:28,921

%l 输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数。

5. log4j.appender.×.File = 

输出文件路径

三.在项目中要输出日志的类中加入

static Logger logger = Logger.getLogger(类.class);
并在需要输出的地方使用logger.info("info")  logger.debug("msg") logger.warn("warn") 或者logger.error("error")方法

以上,即可。


你可能感兴趣的:(java从入门到入土(log4j))