本篇简单介绍基于Java的日志记录工具 log4j
Apache Log4j
是一个基于Java的日志记录工具,是几种Java日志框架之一。最新版本为2.0
。
使用Maven
下载:
(Maven使用可以参照以往的博客)
<!-- https://mvnrepository.com/artifact/log4j/log4j -->
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
鄙人的使用时基于JFinal
的。
新建property文件,log4j.property
放在scr
中。
//日志级别
log4j.rootLogger = appender1,appender2...
log4j的输出级别一共有五级(其中级别最高的是FATAL
FATAL
>ERROR
>WARN
>INFO
>DEBUG
)
Tips:rootLogger
会对整个项目生效,如果想指定的包使用log4j.logger.packageName
//日志输出路径(这里为控制台)
log4j.appender.appender1=org.apache.log4j.ConsoleAppender;
//日志输出路径(这里为`UTF-8`)
log4j.appender.appender1.encoding=UTF-8;
//日志路径(这里为`WebRoot`同级的`log`文件夹的`error.log`)
log4j.appender.appender1.File=log/error.log;
//日志布局格式(这里为`PatternLayout`)
log4j.appender.appender1.layout=org.apache.log4j.PatternLayout;
//日志输出格式(这里为`一种日期格式`)
log4j.appender.appender1.layout.ConversionPattern=%-d{yyyy-MM-dd HH\:mm\:ss} [%c]-[%p] %m%n
log4j.appender.ServerDailyRollingFile.Append=true
配置log4j.property
log4j.rootLogger=E,I,console
log4j.appender.E=org.apache.log4j.DailyRollingFileAppender
log4j.appender.E.encoding=UTF-8
log4j.appender.E.Append=true
log4j.appender.E.Threshold=error
log4j.appender.E.File=log/error.log
log4j.appender.E.layout=org.apache.log4j.PatternLayout
log4j.appender.E.layout.ConversionPattern=%-d{yyyy-MM-dd HH\:mm\:ss} [%c]-[%p] %m%n
log4j.appender.I=org.apache.log4j.DailyRollingFileAppender
log4j.appender.I.encoding=UTF-8
log4j.appender.I.Append=true
log4j.appender.I.Threshold=info
log4j.appender.I.File=log/info.log
log4j.appender.I.layout=org.apache.log4j.PatternLayout
log4j.appender.I.layout.ConversionPattern=%-d{yyyy-MM-dd HH\:mm\:ss} [%c]-[%p] %m%n
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.Target=System.out
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%n%-d{yyyy-MM-dd HH:mm:ss}%n[%p]-[Thread: %t]-[%C.%M()]: %m%n
Java:比如在JFinal启动之后输出一条info
信息。
@Override
public void afterJFinalStart() {
Logger log=Logger.getLogger(Config.class);
log.info("success");
}
原文:https://www.cnblogs.com/chenjy1225/p/9661363.html